Pagini recente » Cod sursa (job #2860751) | Cod sursa (job #1295550) | Cod sursa (job #3256845) | Cod sursa (job #3208367) | Cod sursa (job #2842247)
#include <stdio.h>
#include <algorithm>
#define NMAX 1000
#define INF 2000000001
#define EPS 0.001
using namespace std;
double p[NMAX * NMAX + 1];
int vx[NMAX + 1], vy[NMAX + 1];
int main(){
FILE *fin,*fout;
int n, i, m, j, cnt, af;
fin = fopen("trapez.in", "r");
fout = fopen("trapez.out", "w");
fscanf(fin, "%d", &n);
for(i = 1; i <= n; i++)
fscanf(fin, "%d%d", &vx[i], &vy[i]);
m = 1;
for(i = 1; i <= n; i++) {
for(j = i + 1; j <= n; j++) {
p[m] = (double)(vx[i] - vx[j]) / (vy[i] - vy[j]);
m++;
}
}
sort(p + 1, p + m);
m--;
i = 1;
af = 0;
while(i <= m) {
cnt = 1;
while(i <= m && p[i + 1] == p[i]) {
cnt++;
i++;
}
af = af + (cnt - 1) * (cnt / 2);
i++;
}
fclose(fin);
fprintf(fout, "%d\n", af);
fclose(fout);
return 0;
}