Cod sursa(job #3333652)

Utilizator parus_majorParus Major parus_major Data 14 ianuarie 2026 19:07:27
Problema Fractii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <iostream>
#include <fstream>
#include <algorithm>
#include <vector>

using namespace std;

ifstream fin("fractii.in");
ofstream fout("fractii.out");

#define MAXN 1000002

int phi[MAXN];
int N;
long long ans;

int main()
{
    fin >> N;
    phi[0] = 0; phi[1] = 1;
    for (int i = 2; i <= N; ++i) {
        phi[i] = i - 1;
    }

    for (int i = 2; i <= N; ++i) {
        for (int j = 2 * i; j <= N; j += i) {
            phi[j] -= phi[i];
        }
    }

    ans = 1LL;
    for (int i = 2; i <= N; ++i) {
        ans += 2LL * phi[i];
    }
    fout << ans;

    return 0;
}