Cod sursa(job #2740946)

Utilizator Ionut10Floristean Ioan Ionut10 Data 14 aprilie 2021 20:45:07
Problema Fractii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.58 kb
#include <bits/stdc++.h>
#define DimMax 1000001

using namespace std;

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

int n;
int PHI[DimMax];
long long nr;

void Phi()
{
    for ( int i = 1; i <= n; i++ ) PHI[i] = i;

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


}

int main()
{
    fin >> n;
    Phi(); nr = 1;
    for ( int p = 2; p <= n; p++ )
        nr += 2 * PHI[p];
    fout << nr;

    return 0;
}