Cod sursa(job #241462)

Utilizator nusmaibunkeleviprofesor cicalescu nusmaibunkelevi Data 10 ianuarie 2009 07:07:34
Problema Fractii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.42 kb
#include<stdio.h>
#define NM 1000000
int main(){
freopen("fractii.in","r",stdin);
freopen("fractii.out","w",stdout);
long long fi[NM+1],r;
long n,i,j,nr;
char p[NM+1]={0};
scanf("%lld",&n);
for(i=1;i<=n;++i) fi[i]=i;
for(i=2;i<=n;++i){
	if(!p[i])
	{
		for(j=2;j*i<=n;++j){
			fi[j*i]=fi[j*i]*(i-1)/i;
			p[j*i]=1;
			}
		fi[i]--;
		}
	}
r=1;
for(i=2;i<=n;++i) r+=2*fi[i];
printf("%lld",r);
return 0;
}