Pagini recente » Borderou de evaluare (job #839474) | Rezultatele filtrării | Autentificare | Rezultatele filtrării | Cod sursa (job #118595)
Cod sursa(job #118595)
Utilizator |
|
Data |
26 decembrie 2007 20:49:18 |
Problema |
Sum |
Scor |
100 |
Compilator |
cpp |
Status |
done |
Runda |
Arhiva de probleme |
Marime |
0.47 kb |
#include<fstream.h>
ifstream f("sum.in");
ofstream q("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();
f >> t;
for(long i=1;i<=t;++i)
{
f >> x;
solutie=2*phi[x]*x;
q << solutie <<"\n";}
return 0;
}