Cod sursa(job #3341093)

Utilizator GliggyGligor Andrei Gliggy Data 17 februarie 2026 21:07:53
Problema Fractii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <bits/stdc++.h>
using namespace std;

int main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);

    freopen("fractii.in", "r", stdin);
    freopen("fractii.out", "w", stdout);

    int N;
    cin >> N;

    vector<long long> phi(N + 1);

    for (int i = 1; i <= N; i++)
        phi[i] = i;

    for (int i = 2; i <= N; i++) {
        if (phi[i] == i) { // i is prime
            for (int j = i; j <= N; j += i)
                phi[j] -= phi[j] / i;
        }
    }

    long long sum = 0;
    for (int i = 1; i <= N; i++)
        sum += phi[i];

    long long result = 2 * sum - 1;

    cout << result << "\n";

    return 0;
}