Cod sursa(job #378643)
| Utilizator | Data | 29 decembrie 2009 12:26:44 | |
|---|---|---|---|
| Problema | Sum | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.51 kb |
#include <stdio.h>
#include <math.h>
long n,x,j,i;
long long sum;
long long v[100005];
void aha()
{
int i,j;
for(i=1;i<=100005;i++)
v[i]=i;
for(i=2;i<=100005;i++)
if (v[i]==1)
{
j=2*i;
while (j<=100005)
{
v[j]=v[j]-v[i]/i;
j=j+i;
}
}
}
int main()
{
aha();
freopen("sum.in","r",stdin);
freopen("sum.out","w",stdout);
scanf("%ld",&n);
for(i=1;i<=n;i++)
{
scanf("%ld",&x);
sum=v[x]*x*2;
printf("%lld",sum);
}
return 0;
}