Cod sursa(job #783761)

Utilizator dumytruKana Banana dumytru Data 3 septembrie 2012 20:32:09
Problema Fractii Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.49 kb
#include<stdio.h>
using namespace std;

int phi(int n){
int result=1;

if(!(n%2)){
n/=2;
while(!(n%2)){
n/=2;
result*=2;
}
}

for(int k=3;k*k<=n;k+=2){
if(!(n%k)){
n/=k;
result*=k-1;
while(!(n%k)){
n/=k;
result*=k;
}
}
}

if(n>1)
result*=n-1;

return result;
}
int main()
{
    freopen("fractii.in","r",stdin);
    freopen("fractii.out","w",stdout);
	long int n,i,z=1;
	scanf("%lu",&n);
	for(i=2;i<=n;i++)
        z=z+phi(i)*2;
    printf("%u",z);
    return 0;
}