Pagini recente » Cod sursa (job #297256) | Cod sursa (job #2503286) | Cod sursa (job #2678209) | Cod sursa (job #892697) | Cod sursa (job #626933)
Cod sursa(job #626933)
#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;
}