Cod sursa(job #206700)
Utilizator | speedzeal xtreme | Data | 8 septembrie 2008 22:32:07 |
---|---|---|---|
Problema | Fractii | Scor | 30 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.44 kb |
#include<iostream.h>
#include<fstream.h>
#include<math.h>
int main()
{
fstream f("fractii.in",ios::in),g("fractii.out",ios::out);
int i,j,nr,phi,n,rez=1;
f>>n;
for(i=2;i<=n;i++)
{
nr=i;phi=i;
for(j=2;j<=sqrt(nr);j++)
{
if(nr%j==0)
{
phi=phi*(j-1)/j;
while(nr%j==0)
nr/=j;
}
}
if(nr>1)
phi=phi*(nr-1)/nr;
rez+=2*phi;
}
g<<rez;
f.close();
g.close();
return 0;
}