Cod sursa(job #147669)

Utilizator jeanFMI - Petcu Ion Cristian jean Data 3 martie 2008 12:48:28
Problema Fractii Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include<fstream.h>
#include<math.h>
long n,i,aux,nf=0;
int d,prim,v[100],p,ok,m;
int main()
{
ifstream f("fractii.in");
ofstream g("fractii.out");
f>>n;
nf+=n;
for(i=2;i<=n;i++)
 {prim=1;d=2;
  while(d<=sqrt(i)&&prim==1)
   if(i%d==0) prim=0;
     else d++;
  if(prim==1)
  {nf+=(i-1);m=0;
  for(aux=i;aux<=n;aux+=i)
   m++;nf+=(n-i+1-m);}
  else
  {aux=i; d=2; nf++;p=0;
  while(aux!=1)
   {if(aux%d==0)
     {v[p++]=d;
     while(aux%d==0)
      aux/=d;
     }
    d++;
    }
    for(aux=2;aux<=n;aux++)
      {ok=1;
     for(d=0;d<p;d++)
	if(aux%v[d]==0)ok=0;
     if(ok==1)nf++;}
   }
  }
g<<nf;
f.close();
g.close();
return 0;
}