Pagini recente » Borderou de evaluare (job #528023) | Cod sursa (job #1654058) | Cod sursa (job #212145) | Cod sursa (job #87650) | Cod sursa (job #1588542)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("fractii.in");
ofstream out("fractii.out");
int phi(int);
int main()
{
int n, cnt=0;
in>>n;
for(int i=2; i<=n; i++)
{
cnt+=phi(i);
}
cnt*=2;
cnt++;
out<<cnt;
return 0;
}
int phi(int x)
{
int n=x;
if(x%2==0)
{
n/=2;
while(x%2==0)
x>>=1;
}
for(int i=3;x!=1;i+=2)
{
if(x%i==0){
n=(n/i)*(i-1);
while(x%i==0)
x/=i;
}
}
return n;
}