Cod sursa(job #1815386)

Utilizator Firealex2Rotileanu Alexandru Firealex2 Data 25 noiembrie 2016 09:51:51
Problema Sum Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.62 kb
#include <fstream>

using namespace std;

ifstream fi("sum.in");
ofstream fo("sum.out");

int N;
void indicator();
const int maxn=100;

long long int phi[202];

int main()
{
    fi>>N;
    indicator();
    for(int i=1;i<=N;i++)
    {
        int nr;
        fi>>nr;
        fo<<phi[2*nr]<<'\n';
    }

    return 0;
}

void indicator()
{
    for(int i=1;i<=2*maxn;i++)
        phi[i]=(i*(i-1))/2;
    for(int i=2;i<=2*maxn;i++)
    {
        int s=phi[i];
        for(int j=2*i;j<=2*maxn;j+=i)
            {
                phi[j]-=s;
                s+=phi[j];
            }
    }
    return;
}