Pagini recente » Rezultatele filtrării | Monitorul de evaluare | Borderou de evaluare (job #1656079) | Borderou de evaluare (job #863638) | Cod sursa (job #66542)
Cod sursa(job #66542)
#include<stdio.h>
long long n, contor, v[1000002], u[1000002];
void eratostene()
{
long long i,j;
for(i=2;i<=1000000;i++) v[i]=i;
for(i=2;i<=1000000;i++)
{
if(i>n) break;
if(u[i]==0)
{
j=2;
v[i]--;
while(i*j<=n)
{
u[i*j]=1;
v[i*j]=v[i*j]-v[i*j]/i;
j++;
}
}
}
}
void citire()
{
freopen("fractii.in","r",stdin);
scanf("%lld",&n);
}
int main()
{
citire();
long long i;
contor=1;
eratostene();
for (i=2; i<=n; i++)
contor+=v[i];
freopen("fractii.out","w",stdout);
printf("%lld",contor*2-1);
return 0;
}