Cod sursa(job #2439694)

Utilizator RaduToporanRadu Toporan RaduToporan Data 16 iulie 2019 17:34:33
Problema Fractii Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <cstdio>

int n,p,original,nr,d,nrq;
long long sol;

int main()
{
    freopen("fractii.in","r",stdin);
    freopen("fractii.out","w",stdout);
    scanf("%d",&n);
    sol=1ll*2*n-1;
    for (p=2; p<=n; p++)
    {
        original=p;
        nr=p;
        d=2;
        nrq=n-1;
        while (nr!=1 && d*d<=original)
        {
            if (nr%d==0)
            {
                nrq=nrq-(n/d);
                while (nr%d==0)
                    nr=nr/d;
            }
            d++;
        }
        if (nr!=1) nrq=nrq-n/nr;
        sol=sol+1ll*nrq;
    }
    printf("%lld\n",sol);
    return 0;
}