Cod sursa(job #185370)

Utilizator GagosGagos Radu Vasile Gagos Data 25 aprilie 2008 11:06:26
Problema Puteri Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.04 kb
#include<stdio.h>
struct put
{
	int i,j,k;
}t[100001];
int MIN(int i1,int j1,int k1)
{
	if(i1<j1)
		if(i1<k1)
			if(i1==0)
				if(k1<j1 && k1!=0)
					return k1;
				else
					return j1;
			else
				return i1;
		else
			if(k1==0)
				if(i1!=0)
					return i1;
				else
					return j1;
			else
				return k1;
	else
		if(j1<k1)
			if(j1==0)
				if(k1<i1 && k1!=0)
					return k1;
				else
					return i1;
			else
				return j1;
		else
			if(k1==0)
				if(j1!=0)
					return j1;
				else
					return i1;
			else
				return k1;
}
long n,cnt;
int i1,j1,k1,min;
int main()
{
	long l,m;
	freopen("puteri.in","r",stdin);
	freopen("puteri.out","w",stdout);
	scanf("%ld",&n);
	for(l=1;l<=n;++l)
		scanf("%d %d %d",&t[l].i,&t[l].j,&t[l].k);
	for(l=1;l<n;++l)
		for(m=l+1;m<=n;++m){
			i1=t[l].i+t[m].i;
			j1=t[l].j+t[m].j;
			k1=t[l].k+t[m].k;
			min=MIN(i1,j1,k1);
			if(min==0)
				++cnt;
			else
				if(i1%min==0 && j1%min==0 && k1%min==0)
					++cnt;
		}
	printf("%ld\n",cnt);
	fcloseall();
	return 0;
}