Cod sursa(job #490800)
Utilizator | Data | 7 octombrie 2010 22:59:36 | |
---|---|---|---|
Problema | Fractii | Scor | 30 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.42 kb |
#include <stdio.h>
int x[1000010],n,i,j,s=0;
int main()
{
freopen("fractii.in","r",stdin);
freopen("fractii.out","w",stdout);
scanf("%d",&n);
for(i=2; i<=n; ++i)
{
if(x[i]==0)
{
s+=i-1;
for(j=i+i; j<=n; j+=i)
{
if(x[j]==0)
x[j]=j-(j/i);
else
x[j]=x[j]-x[j]/i;
}
}
else
s += x[i];
}
printf("%d",2*s+1);
return 0;
}