Cod sursa(job #2497014)

Utilizator EckchartZgarcea Robert-Andrei Eckchart Data 21 noiembrie 2019 22:44:51
Problema Fractii Scor 70
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <fstream>
unsigned N;  
unsigned long long S = 1;


unsigned phi(unsigned n)
{
    unsigned result = n, p = 2;
    while (p * p <= n)
    {
        if (n % p == 0)
        {
            while (n % p == 0)
            {
                n /= p;
            }
            result -= result / p;
        }
        ++p;
    }

    if (n > 1)
    {
        result -= result / n;
    }
    return result;
}


int main()
{
    std::ifstream fisierIN("fractii.in");
    fisierIN >> N;
    fisierIN.close();

    for (unsigned k = 2; k <= N; ++k)
    {
        S += 2U * phi(k);
    }

    std::ofstream fisierOUT("fractii.out");
    fisierOUT << S;
    fisierOUT.close();
    return 0;
}