Cod sursa(job #3219108)

Utilizator mirceamaierean41Mircea Maierean mirceamaierean41 Data 30 martie 2024 08:20:43
Problema Fractii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.49 kb
#include <fstream>
using namespace std;

int n, i, j;
const int NMAX = 1e6 + 1;

long long T = 0;
int fi[NMAX];

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

int main()
{
    fin >> n;

    for (i = 1; i < NMAX; i++)
        fi[i] = i;

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

    for (i = 1; i <= n; ++i)
        T += fi[i];

    fout << 2 * T - 1;
    return 0;
}