Cod sursa(job #2779977)

Utilizator Razvan_GabrielRazvan Gabriel Razvan_Gabriel Data 5 octombrie 2021 17:27:31
Problema Fractii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.62 kb
#include <iostream>
#include <fstream>

using namespace std;

int e[1000001];

void euler(int n){
    for(int i = 2; i <= n; i++)
        e[i]=i;
    for(int i = 2; i <= n; i++){
        if(e[i] == i){
            for(int j = i; j <= n; j += i)
                e[j] = e[j] / i * (i - 1);
        }
    }
}

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

    int n;
    fin >> n;

    euler(n);

    long long raspuns = 0;
    for(int i = 2; i <= n; i++){
        raspuns += e[i];
    }

    raspuns *= 2;
    raspuns++;

    fout << raspuns;

    return 0;
}