Cod sursa(job #2042749)
Utilizator | Data | 18 octombrie 2017 23:47:19 | |
---|---|---|---|
Problema | Fractii | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.35 kb |
#include<cstdio>
int v[1000005];
int main(){
freopen("fractii.in","r",stdin);
freopen("fractii.out","w",stdout);
int n,i,j;
scanf("%d",&n);
for(i=1;i<=n;i++)
v[i]=i;
for(i=2;i<=n;i++)
if (v[i]==i){
v[i]--;
for(j=i*2;j<=n;j=j+i)
v[j]=v[j]-v[j]/i;}
long long sum=0;
for(i=2;i<=n;i++)
sum=sum+1LL*v[i];
printf("%lld\n",2*sum+1);
return 0;}