Pagini recente » Monitorul de evaluare | Diferente pentru utilizator/slayerdme intre reviziile 11 si 12 | Cod sursa (job #2191036) | Monitorul de evaluare | Cod sursa (job #2100080)
#include <iostream>
#include <fstream>
#define NM 1000002
using namespace std;
int n, phi[NM];
long long rez = 1;
int main()
{
ifstream fin ("fractii.in");
ofstream fout ("fractii.out");
fin >> n;
phi[1] = 1;
for(int i = 2; i <= n; i++)
{
int k = 1;
phi[i] += i - 1;
rez += phi[i];
for(int j = 2; i * j <= n; j++)
{
phi[i * j] -= phi[i];
}
}
fout << rez * 2 - 1;
return 0;
}