Cod sursa(job #118591)
| Utilizator | Data | 26 decembrie 2007 20:42:53 | |
|---|---|---|---|
| Problema | Sum | Scor | 85 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.43 kb |
#include <fstream.h>
ifstream f("sum.in");
ofstream q("sum.out");
long i,n,x;
long long solutie,sol[100001];
void eratostene()
{
int j,k;
for (j=2; j<=100000; j++)
sol[j]=j-1;
for (j=2; j<=100000; j++)
for (k=2*j; k<=100000; k+=j)
sol[k]-=sol[j];
}
int main()
{
f >> n;
eratostene();
for (i=1; i<=n; i++)
{
f >> x;
solutie=2*x*sol[x];
q << solutie <<"\n";
}
return 0;
}
