Cod sursa(job #473401)

Utilizator DanandreighGheorghe Dan Andrei Danandreigh Data 29 iulie 2010 12:26:14
Problema Trapez Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
#include <cstdio>
using namespace std;
int main()
{
	struct punct{int x;int y;} a[1001],aux;
	int n,i,j,s,k,l,x1,y1,x2,y2;
	FILE *f=fopen("trapez.in","r");
	FILE *g=fopen("trapez.out","w");
	fscanf(f,"%d",&n);
	for (i=1;i<=n;i++)
	{
		fscanf(f,"%d %d",&a[i].x,&a[i].y);}
		/*j=i-1;
		while (1<=j && (a[j].x>a[j+1].x || (a[j].x==a[j+1].x && a[j].y>a[j+1].y)))
		{
			aux=a[j];
			a[j]=a[j+1];
			a[j+1]=aux;
			j--;
		}
	}*/
	s=0;
	for (i=1;i<=n-3;i++)
	{
		for (j=i+1;j<=n-2;j++)
		{
			x1=a[j].x-a[i].x;
			y1=a[j].y-a[i].y;
			for (k=j+1;k<=n-1;k++)
			{
				for (l=k+1;l<=n;l++)
				{
					x2=a[l].x-a[k].x;
					y2=a[l].y-a[k].y;
					if (x1*y2==x2*y1){s++;}
					if (x1*x2==y1*y2){s++;}
				}
			}
		}
	}
	fprintf(g,"%d\n",s);
	fclose(f);
	fclose(g);
	return 0;
}