Cod sursa(job #471521)
Utilizator | Data | 19 iulie 2010 12:18:32 | |
---|---|---|---|
Problema | Fractii | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.54 kb |
# include <cstdio>
# include <stdlib.h>
using namespace std;
int phi[1000005];
long long n,ct;
int i,j;
int main()
{
freopen("fractii.in","r",stdin);
freopen("fractii.out","w",stdout);
scanf("%lld",&n);
for (int i = 1; i <= n; i++)
phi[i] = i - 1;
for (i = 2; i <= n; i++)
for (j = 2 * i; j <= n; j += i)
phi[j] -= phi[i];
for (i = 2; i <= n; i++)
ct += phi[i];
ct *= 2;
ct++;
printf("%lld",ct);
return 0;
}