Cod sursa(job #222981)
Utilizator | Andrici Cezar andrici_cezar | Data | 26 noiembrie 2008 16:15:53 |
---|---|---|---|
Problema | Fractii | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.64 kb |
#include<fstream.h>
#include<math.h>
int main()
{
long i,n,x,d,y,l,rad,j,nr;
long long a[1000001];
ifstream f("fractii.in");
ofstream g("fractii.out");
f>>n;
a[1]=1;
nr=1;
for(i=2;i<=n;i++)
{
p=2;
x=i;
y=1;
rad=sqrt(x);
while (p<=rad&&x%d>=1) p++;
if (p>rad) a[i]=i-1;
else {
while (y%d==0)
{
y/=d;
z=z*d;
}
z=z/p;
a[i]=a[y]*(d-1)*z;
}
for (i=2;i<=n;i++)
nr=nr+2*a[i];
}
g<<nr;
return 0;
}