Cod sursa(job #3215638)

Utilizator not_anduAndu Scheusan not_andu Data 15 martie 2024 11:07:04
Problema Fractii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.71 kb
#pragma GCC optimize ("03", "Ofast", "unroll-loops")
#include <bits/stdc++.h>

using namespace std;

#define INFILE "fractii.in"
#define OUTFILE "fractii.out"

typedef long long ll;

const int N_MAX = 1e6 + 5;

int phi[N_MAX];

void init(){

    for(int i = 1; i < N_MAX; ++i) phi[i] = i - 1;
    for(int i = 2; i < N_MAX; ++i){
        for(int d = 2 * i; d < N_MAX; d += i) phi[d] -= phi[i];
    }

}

void solve(){

    int n; cin >> n;
    ll ans = 0;

    for(int i = 1; i <= n; ++i) ans += phi[i];
    cout << 2 * ans + 1 << '\n';

}

int main(){
    ios_base::sync_with_stdio(false);
    freopen(INFILE, "r", stdin);
    freopen(OUTFILE, "w", stdout);
    cin.tie(0), cout.tie(0);
    init();
    solve();
    return 0;
}