Pagini recente » Cod sursa (job #959890) | Cod sursa (job #2424033) | Cod sursa (job #556021) | Cod sursa (job #2100405) | Cod sursa (job #616355)
Cod sursa(job #616355)
#include<fstream.h>
#define N 100001
long n,m,i,j,k,x[9600],p[N],t,d;
char v[20],z[20];
unsigned long long h[N],y;
int main()
{ifstream f("sum.in");
ofstream g("sum.out");
x[++k]=2;
for(i=1;((i*i)<<1)+(i<<1)<N;i++)
if(!(p[i>>3]&(1<<(i&7))))
for(j=((i*i)<<1)+(i<<1);(j<<1)+1<N;j+=(i<<1)+1)
p[j>>3]|=(1<<(j&7));
for(i=1;2*i+1<N;++i)
if(!(p[i>>3]&(1<<(i&7))))
x[++k]=2*i+1;
for(i=2;i<N;i++)
{for(h[i]=j=i,t=1;x[t]*x[t]<=j&&j>1&&t<=k;t++)
if(j%x[t]==0)
{h[i]=(h[i]/x[t])*(x[t]-1);
while(j%x[t]==0)
j/=x[t];}
if(j>1)
h[i]=(h[i]/j)*(j-1);}
f>>n;
while(n--)
f>>m,g<<(2*m*h[m])<<'\n';
return 0;}