Cod sursa(job #1521299)
| Utilizator | Data | 10 noiembrie 2015 09:27:22 | |
|---|---|---|---|
| Problema | Fractii | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.51 kb |
#include<cstdio>
using namespace std;
int phi[1000010];
int main(){
freopen("fractii.in","r",stdin);
freopen("fractii.out","w",stdout);
int n,i,j;
long long answer=0;
scanf("%d",&n);
for(i=1;i<=n;i++)
phi[i]=i;
for(i=2;i<=n;i++)
if(phi[i]==i)
for(j=1;j<=n/i;j++){
phi[i*j]/=i;
phi[i*j]=phi[i*j]*(i-1);
}
for(i=1;i<=n;i++)
answer+=phi[i];
printf("%lld",2*answer-1);
return 0;
}
