Cod sursa(job #173815)

Utilizator thepetAndrei Sebastian Petrescu thepet Data 8 aprilie 2008 09:23:25
Problema Fractii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <stdio.h>
FILE *f=fopen("fractii.in","r");
FILE *g=fopen("fractii.out","w");
unsigned long n, a[2][1000000],i ,j;
long long s;

int prim (unsigned long a, unsigned long b)
{if (a==1||b==1)
	return 1;
 else
	if (a==b)
		return 0;
	else
		{unsigned long r=a%b;
 		 while (r!=0)
			{a=b;
			 b=r;
			 r=a%b;
			}
		 if (b==1)
			return 1;	 
		}
 return 0;
}

void main()
{fscanf(f,"%l",&n);
 for (i=1; i<n; i++)
	{for (j=i; j<=n; j++)
		if (prim(i,j))
			a[1][j]=a[1][j-1]+1;
		else
			a[1][j]=a[1][j-1];
	 for (j=1; j<=n; j++)
		{a[0][j]=a[0][j]+a[1][j];
		 a[1][j]=0;
		}
	}
 s=n*n-(a[0][n]-a[0][n-1]);
 fprintf(g,"%l\n",s);
 fcloseall();	
}