Cod sursa(job #2114294)

Utilizator fansalamBalan-Tribus Leon-Roland fansalam Data 25 ianuarie 2018 15:47:23
Problema Fractii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.62 kb
#include <fstream>
using namespace std;
ifstream g("fractii.in");
ofstream h("fractii.out");
long long c[1000001], s=1, n, i, j;
long long r(long long x, long long y)
{
    long long p=1;
    x/=y;
    while(x%y==0)
    {
        x/=y;
        p*=y;
    }
    return p*(y-1);
}
int main()
{
    g>>n;
    for(i=2;i<=n;i++)
        if(c[i]==0)
        {
            c[i]=i-1;
            for(j=2*i;j<=n;j+=i)
            {
                if(c[j]==0)
                    c[j]++;
                c[j]*=r(j, i);
            }
        }
    for(i=1;i<=n;i++)
        s+=2*c[i];
    h<<s;
    return 0;
}