Cod sursa(job #669695)
Utilizator | Data | 27 ianuarie 2012 16:01:44 | |
---|---|---|---|
Problema | Fractii | Scor | 90 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.33 kb |
#include <cstdio>
long long v[1000005];
int main () {
long long n,rez=0;
freopen("fractii.in","r",stdin);
freopen("fractii.out","w",stdout);
scanf("%lld",&n);
for(int i=1;i<=n;++i)v[i]=i-1;
for(int i=2;i<=n;++i){
rez+=v[i];
for(int j=i+i;j<=n;j+=i){
v[j]-=v[i];
}
}
printf("%lld",2LL*rez+1);
return 0;
}