Pagini recente » Cod sursa (job #1533904) | Cod sursa (job #386365) | Cod sursa (job #1412691) | Cod sursa (job #953297) | Cod sursa (job #2774273)
/* [A][M][C][B][N] / [K][R][I][P][6][8] */
#include <bits/stdc++.h>
#pragma warning(disable : 4996)
using namespace std;
// Global variables
const char sp = ' ', nl = '\n';
const int MOD = 777013; // 666013 998244353 1000000007
ifstream fin("fractii.in");
ofstream fout("fractii.out");
int E[1000001] = {0};
int P[78498], idx(0);
void Eratostene() {
E[1] = 1;
for (int i = 2; i <= 1e6; i++) {
if (!E[i]) {
P[idx++] = i;
for (int j = 2; j <= 1e6 / i; j++)
E[i * j] = 1;
}
}
}
int phi(int n) {
double p(n);
for (int i = 0; i < 78498; i++) {
if (P[i] > n) break;
if (n % P[i] == 0)
p = p * (P[i] - 1) / P[i];
}
return round(p);
}
int main() {
Eratostene();
long long s(1);
int n;
fin >> n;
for (int i = 2; i <= n; i++)
s += 2ll * phi(i);
fout << s;
}