Cod sursa(job #3219549)

Utilizator stefan_dore_Stefan Dore stefan_dore_ Data 31 martie 2024 16:59:28
Problema Fractii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <iostream>
#include <fstream>
using namespace std;

ifstream f ("fractii.in");
ofstream g ("fractii.out");

const int NMAX = 1000000;
int Phi[NMAX+1];

void euler(int NMAX) {
    int i, j;
    for (i=1; i<=NMAX; i++)
        Phi[i] = i;
    for (i=2; i<=NMAX; i++)
        if (Phi[i]==i)
            for(j=i; j<=NMAX; j+=i)
                Phi[j] -= Phi[j]/i;
}

int main()
{
    int N;
    long long sol = 0;
    f >> N;
    euler(NMAX);
    for (int i=2; i<=N; i++)
        sol += Phi[i];
    sol = sol*2 + 1;
    g << sol;
    f.close();
    g.close();
    return 0;
}