Cod sursa(job #369479)
| Utilizator | Data | 28 noiembrie 2009 15:09:42 | |
|---|---|---|---|
| Problema | Fractii | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.42 kb |
#include<cstdio>
#define NMAX 1000005
#define FIN "fractii.in"
#define FOUT "fractii.out"
using namespace std;
int f[NMAX],n;
long long rez=0;
int main()
{freopen(FIN,"r",stdin);
freopen(FOUT,"w",stdout);
scanf("%d",&n);
for(int i=1;i<=n;i++)
f[i]=i-1;
for(int i=2;i<=n;i++)
for(int j=2*i;j<=n;j+=i)
f[j]=f[j]-f[i];
for(int i=2;i<=n;i++)
rez+=f[i];
printf("%lld",2*rez+1);
return 0;}
