Cod sursa(job #3186331)

Utilizator TeodorVTeodorV TeodorV Data 22 decembrie 2023 18:41:15
Problema Fractii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <bits/stdc++.h>

using namespace std;

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

const int Nmax=1000001;
int phi[Nmax];
void initPhi()
{
    phi[1]=1;
    for(int i=1; i<Nmax; i++)
        phi[i]=i;
    for(int i=2; i<Nmax; i++)
    {
        if(phi[i]==i)
        {
            for(int j=i; j<Nmax; j+=i)
            {
                phi[j]=(float)phi[j]/i*(i-1);
            }
        }
    }
}

int main()
{
    initPhi();
    int n;
    fin>>n;
    long long sum=0;
    for(int i=2; i<=n; i++)
        sum+=1LL*phi[i];
    sum*=2;
    sum++;
    fout<<sum;
    return 0;
}