Cod sursa(job #63021)

Utilizator c_sebiSebastian Crisan c_sebi Data 25 mai 2007 17:38:22
Problema Trapez Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <stdio.h>
#include <math.h>
#define INF 2000000001

double s[1000];
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;
}