Pagini recente » Cod sursa (job #1210781) | Cod sursa (job #2188107) | Cod sursa (job #1268299) | Cod sursa (job #2999446) | Cod sursa (job #2931252)
#define maxs(a, b) a = (a > b) ? a : b
#define mins(a, b) a = (a < b) ? a : b
#define all(a) a.begin(), a.end()
#define rng(a, i, j) a.begin() + i, a.begin() + j
#define aall(a, n) a + 1, a + 1 + n
#define arng(a, i, j) a + i, a + j
#define pb push_back
#define ins insert
#define sz(a) (int)a.size()
#define r inFile
#define w outFile
#define wd std::cout
#include <fstream>
#include <iostream>
int phi(int a) {
int ans = a;
int div = 2, exp = 0;
while (a % div == 0) {
++exp;
a /= div;
}
if (exp != 0) {
ans = ans / div * (div - 1);
}
++div;
for (; div <= a; div += 2) {
exp = 0;
while (a % div == 0) {
++exp;
a /= div;
}
if (exp != 0) {
ans = ans / div * (div - 1);
}
}
return ans;
}
int main() {
std::ifstream inFile("fractii.in");
std::ofstream outFile("fractii.out");
int n;
r >> n;
int64_t ans = 0;
for (int i = 2; i <= n; ++i) {
ans += phi(i);
}
ans = 2 * ans + 1;
w << ans << '\n';
return 0;
}