Cod sursa(job #626933)

Utilizator Horea94UBB-Cartis-Muresan Horea94 Data 28 octombrie 2011 17:15:41
Problema Fractii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.53 kb
#include <cstdio>
const int MAXN = 1000010;

long long nr_fractii_ireduct = 0,n,e[MAXN];

void citire()
{
freopen("fractii.in","r",stdin);
freopen("fractii.out","w",stdout);
scanf ("%lld",&n);
}

void indicator_euler()
{
for (int i = 1;i <= n;++i)
e[i] = i;
for (int p = 2;p <= n;++p)
if (e[p] == p)
for (int i = p;i <= n;i += p)
e[i] = e[i] / p * (p - 1);

}

int main()
{
citire();
indicator_euler();
for (int i = 1;i <= n;++i)
nr_fractii_ireduct += 2 * e[i];
printf ("%lld",--nr_fractii_ireduct);
return 0;
}