Cod sursa(job #1865227)

Utilizator demetriad-dagpagDavid Demetriad demetriad-dagpag Data 1 februarie 2017 16:08:05
Problema Sum Scor 100
Compilator c Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
int f[100001];
int getINT()
{
    int nr=0;
    char c;
    c=getchar();
    while(!isdigit(c))
        c=getchar();
    while(isdigit(c))
    {
        nr=nr*10+c-'0';
        c=getchar();
    }
    return nr;
}
int main()
{
    int t,i,x,e,xc,div,j;
    freopen("sum.in","r",stdin);
    freopen("sum.out","w",stdout);
    t=getINT();
    for(i=1; i<=100000; i++)
        f[i]=i;
    for(i=2; i<=100000; i++)
        if(f[i]==i)
            for(j=i; j<=100000; j+=i)
                f[j]=(f[j]/i)*(i-1);
    for(i=1; i<=t; i++)
    {
        x=getINT();
        printf("%lld\n",(long long)2*x*f[x]);
    }

    return 0;
}