Cod sursa(job #218034)
Utilizator | Data | 31 octombrie 2008 17:09:40 | |
---|---|---|---|
Problema | Fractii | Scor | 30 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.37 kb |
#include<fstream.h>
long long a[1000001],n,i,x,y,p;
long long nr;
int main()
{
ifstream f("fractii.in");
ofstream g("fractii.out");
f>>n;
a[1]=1;
for(i=2;i<=n;i++)
{x=i;
p=2;
while(x%p)p++;
y=1;
while(x%p==0){y=y*p;
x=x/p;
}
y=y/p;
a[i]=(p-1)*y*a[x];
}
nr=1;
for(i=2;i<=n;i++)
nr=nr+2*a[i];
g<<nr;
g.close();
return 0;
}