Pagini recente » tema | Cod sursa (job #1691703) | Cod sursa (job #777272) | Cod sursa (job #986126) | Cod sursa (job #2544999)
#include <fstream>
#include <vector>
int main() {
std::ifstream in;
in.open("fractii.in");
size_t N, answer = 0;
in >> N;
in.close();
std::vector<size_t> phi(N + 1);
for (size_t i = 1; i <= N; ++i)
phi[i] = i - 1;
// Scădem fiecare multiplu de-al lui φ[i]
for (size_t i = 2; i <= N; ++i) {
for (size_t j = 2 * i; j <= N; j += i)
phi[j] -= phi[i];
answer += phi[i];
}
std::ofstream out("fractii.out");
out << 2 * answer + 1 << std::endl;
out.close();
return 0;
}