Cod sursa(job #290658)

Utilizator shnakoVlad Schnakovszki shnako Data 28 martie 2009 15:03:13
Problema Fractii Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.92 kb
#include <stdio.h>
#define NR 2000005
FILE *f=fopen("fractii.in", "r"), *g=fopen("fractii.out", "w");
long n, i, j, s[100001], h, k, t;
bool v[NR], sw;
void citeste(void)
	{
   fscanf(f, "%ld", &n);
   }


void ciuruieste(void)
	{
   s[1]=2;
   t=2;
   for (i=3;i<=n;i+=2)
      if (v[i]==0)
   		{
     	 	if (i*i>n)
      		sw=1;
      	if (!sw)
   			for (j=i;i*j<=n;j+=2)
         		v[i*j]=1;
         s[t++]=i;
         }
   t--;
   }

long numara(void)
	{
   long k=0;
   for (i=1;i<n;i++)
   	for (j=i+1;j<=n;j++)
            {
            sw=0;
            for (h=1;h<=t;h++)
              	if (j%s[h]==0&&i%s[h]==0)
                  {
                  sw=1;
                  break;
                  }
            if (!sw)
            	k++;
            }
	return 2*k+1;
   }

int main(void)
{
citeste();
ciuruieste();
fprintf(g, "%ld", numara());
fcloseall();
return 0;
}