Pagini recente » Cod sursa (job #2697294) | Cod sursa (job #2207394) | Cod sursa (job #1262087) | Cod sursa (job #692884) | Cod sursa (job #2564123)
#include <bits/stdc++.h>
using namespace std;
const int NMAX = 1000005;
ifstream fin("fractii.in");
ofstream fout("fractii.out");
int N, Phi[NMAX];
bool C[NMAX];
void PHI()
{
for( int i = 3; i <= N; i++ )
{Phi[i] = i;C[i] = 1;}
Phi[2] = 1;
C[2] = 1;
for( int i = 4; i <= N; i += 2 ) Phi[i] = Phi[i] / 2;
for( int i = 3; i <= N; i +=2 )
if( C[i] == 1)
{
Phi[i] = i-1;
for( int j = 2*i; j <= N; j += i )
{
C[j] = 0;
Phi[j] = Phi[j] / i * ( i - 1 );
}
}
}
void Read()
{
fin >> N;
PHI();
long long F = 0;
for( int i = 2; i <= N; ++i )
F += Phi[i];
F *= 2;
F++;
fout << F;
}
int main()
{
Read();
return 0;
}