Cod sursa(job #2379324)

Utilizator mihai002016Zaharia Teodor Mihai mihai002016 Data 13 martie 2019 12:43:23
Problema Fractii Scor 60
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <bits/stdc++.h>

using namespace std;
ifstream fin("fractii.in");
ofstream fout("fractii.out");
long long int n,i,s,d,p,j;
int main()
{
    fin>>n;
    s=1;
    for(i=2; i<=n; i++)
    {
        d=3;
        p=i;
        j=i;
        if(j%2==0)
        {
            p=p/2;
            while(j%2==0)
            {
                j=j/2;
            }
        }
        while(d*d<=j)
        {
            if(j%d==0)
            {
                p=(p*(d-1))/d;
                while(j%d==0)
                {
                    j=j/d;
                }
            }
            d=d+2;
        }
        if(j>1)
            p=(p*(j-1))/j;
        s=s+p*2;
    }
    fout<<s;
}