Cod sursa(job #3363872)

Utilizator Alias47John Doe Alias47 Data 24 august 2026 16:01:03
Problema Fractii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.8 kb
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef size_t ull;
typedef vector<int> vc;
typedef vector<vector<int>> matrix;
#define ft(n) for(int i=1; i<=n; i++)
#define sp ' '
#define vx first
#define vy second
string file = "fractii";
ifstream f(file + ".in");
ofstream g(file + ".out");

int n;
vector<int> phi;

void ciur_phi(int nmax, vc& phi)
{
    phi.resize(nmax + 5, 0);
    for (int i = 0; i <= nmax; i++)
        phi[i] = i;
    for (int i = 2; i <= nmax; i++) {
        if (phi[i] == i) {
            for (int j = i; j <= nmax; j += i)
                phi[j] -= phi[j] / i;
        }
    }
}


int main()
{
    f >> n;
    ciur_phi(n, phi);
    ull s=0;
    for (int i = 2; i <= n; i++)
        s += phi[i];
    g << 2 * s + 1;
    return 0;
}