Cod sursa(job #3265600)

Utilizator RoBest69Muntean Claudiu RoBest69 Data 1 ianuarie 2025 14:07:36
Problema Fractii Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <iostream>
#include <fstream>
#include <vector>

using namespace std;

vector<int> computeTotients(int N) {
    vector<int> phi(N + 1);
    for (int i = 0; i <= N; i++) {
        phi[i] = i;
    }

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

int main() {
    ifstream in("fractii.in");
    ofstream out("fractii.out");

    int N;
    in >> N;

    vector<int> phi = computeTotients(N);

    int count = 0;
    for (int i = 1; i <= N; i++) {
        count += phi[i];
    }

    out << count << endl;

    return 0;
}