Pagini recente » Cod sursa (job #2054280) | Cod sursa (job #1302170) | Cod sursa (job #2035527) | Cod sursa (job #1637142) | Cod sursa (job #1802798)
#include <stdio.h>
#include <algorithm>
#define d 1001
#define m 2000000001
using namespace std;
struct s{int x; int y;};
int i, j, n, k, q, np;
float p[d*d];
s v[d];
int main()
{
freopen("trapez.in", "r", stdin);
freopen("trapez.out", "w", stdout);
scanf("%d", &n);
for(i = 0; i < n; i++)
scanf("%d %d", &v[i].x, &v[i].y);
for(i = 0; i < n-1; i++)
for(j = i + 1; j < n; j++)
{
if(v[i].y == v[j].y) p[k++] = m;
else p[k++] = (float)(v[i].x - v[j].x) / (v[i].y - v[j].y);
}
stable_sort(p, p + k);
i = 0;
while(i < k)
{
q = 1;
while(p[i] == p[i+1])
{
q++;
i++;
}
i++;
np += q * (q - 1) / 2;
}
printf("%d", np);
return 0;
}