Cod sursa(job #257983)
Utilizator | Data | 14 februarie 2009 14:30:24 | |
---|---|---|---|
Problema | Fractii | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.53 kb |
#include<algorithm>
#define DIM 1000001
using namespace std;
int n,c[DIM];
void ciur(){
int i,j;
for(i=2; i<=DIM; ++i)
c[i]=i;
for(i=2; i<=DIM; ++i)
if(c[i]==i)
for(j=i; j<=DIM; j+=i)
c[j]=c[j]/i*(i-1);}
void solve(){
int i;
long long s;
scanf("%d",&n);
for(i=2,s=0; i<=n; ++i)
s+=c[i];
printf("%lld",2*s+1);}
int main(){
freopen("fractii.in","r",stdin);
freopen("fractii.out","w",stdout);
ciur();
solve();
return 0;}