Pagini recente » Cod sursa (job #2442907) | Borderou de evaluare (job #1567317) | Cod sursa (job #699834) | Cod sursa (job #1254627) | Cod sursa (job #63022)
Cod sursa(job #63022)
#include <stdio.h>
#include <math.h>
#define INF 2000000001
double s[499600];
int n, k;
struct Punct {int x, y;} P[1000];
void read()
{
int i;
freopen ("trapez.in", "r", stdin);
scanf ("%d", &n);
for (i=0; i<n; ++i)
scanf("%d %d", &P[i].x, &P[i].y);
fclose(stdin);
}
void slope()
{
int i, j;
for (i=0; i<n; ++i)
for (j=i+1; j<n; ++j)
{
if (P[i].x==P[j].x)
s[k++]=INF;
else s[k++] = (double)(P[i].y-P[j].y)/(P[i].x-P[j].x);
}
}
int main()
{
int i, j, nr=0;
read();
slope();
for (i=0; i<k; ++i)
for (j=i+1; j<k; ++j)
if (s[i]==s[j]) nr++;
freopen ("trapez.out", "w", stdout);
printf ("%d\n", nr);
fclose(stdout);
return 0;
}