Cod sursa(job #25796)

Utilizator luana_0105Fagarasan Luana luana_0105 Data 4 martie 2007 14:43:49
Problema Puteri Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.97 kb
#include<stdio.h>
#define nmax 20000

int prime(int i, int j)
{
    if(i!=0&&j!=0)
    {  while (i!=j)
	if(i>j)
	    i=i-j;
	else
	    j=j-i;
    if(j==1)
       return 1;
    else  return j;
    }


    if(i==0&&j!=0)
       return j;
    if(i==0&&j==0)
       return 0;
    if(i!=0&&j==0)
       return i;
    return 0;


}


FILE *f,*g;

char a[nmax+1][3];

int main()
{

   long i,n,j;
   long ct=0;
   int d,n1,n2,n3;

   f=fopen("puteri.in","r");
   g=fopen("puteri.out","w");
   fscanf(f,"%ld",&n);
   for(i=0;i<n;i++)
   {
       fscanf(f,"%d",&a[i][0]); // puterea lui 2
       fscanf(f,"%d",&a[i][1]); // puterea lui 3
       fscanf(f,"%d",&a[i][2]); // puterea lui 5

   }

   for(i=0;i<n-1;i++)
     for(j=i+1;j<n;j++)
     {
	 n1=a[i][0]+a[j][0];
	 n2=a[i][1]+a[j][1];
	 n3=a[i][2]+a[j][2];

	d=prime(n1,n2);
	d=prime(d,n3);
	if(d!=1)
	 ct++;
     }

   fprintf(g,"%ld\n",ct);

   fcloseall();
   return 0;
}