Pagini recente » Cod sursa (job #2012984) | Cod sursa (job #183879) | Cod sursa (job #1625232) | Cod sursa (job #2201981) | Cod sursa (job #2450837)
#include <iostream>
#include <vector>
#include <algorithm>
#include <fstream>
#include <cmath>
#include <math.h>
#include <queue>
#include <string>
using namespace std;
ifstream fin("fractii.in");
ofstream fout("fractii.out");
int phi[1000100];
long long getphi(int n)
{
long long sum = 1;
phi[1] = 1;
for (int i = 2; i <= n; i++) {
if (phi[i] == 0) {
phi[i] = i - 1;
for (int j = 2; i * j <= n; j++) {
if (phi[j] == 0)
continue;
int q = j;
int f = i - 1;
while (q % i == 0) {
f *= i;
q /= i;
}
phi[i * j] = f * phi[q];
}
}
sum += phi[i];
}
return sum;
}
int main()
{
ios_base::sync_with_stdio(false);
int n;
fin >> n;
fout << getphi(n) * 2 - 1;
}