Cod sursa(job #1355225)
Utilizator | Silas Daniel danysilas23 | Data | 22 februarie 2015 15:28:20 |
---|---|---|---|
Problema | Sum | Scor | 85 |
Compilator | cpp | Status | done |
Runda | 9neplace3 | Marime | 0.51 kb |
#include <fstream>
using namespace std;
ifstream fin("sum.in");
ofstream fout("sum.out");
long long n,phi[100000];
void eratostene()
{
long long i,j;
for(i=1;i<=100000;i++)
phi[i]=i;
for(i=2;i<=100000;i++)
if(phi[i]==i)
for (j=i; j<=100000; j+=i)
{
phi[j]/=i;
phi[j]*=(i-1);
}
}
int main()
{
long long t,x,solutie;
eratostene();
fin >> t;
for(long i=1;i<=t;++i)
{
fin >> x;
solutie=2*phi[x]*x;
fout << solutie <<"\n";}
return 0;
}