Pagini recente » Cod sursa (job #2837528) | Cod sursa (job #3211289) | Cod sursa (job #308934) | Cod sursa (job #340931) | Cod sursa (job #819064)
Cod sursa(job #819064)
#include<stdio.h>
#include<math.h>
int phi (int x)
{
int lim,e,d,rez;
lim=sqrt(x);
rez=x;
d=2;
while(x>1 && d<=lim)
{
e=0;
while(x%d==0)
{
x/=d;
e++;
}
if(e)
rez=rez/d*(d-1);
d++;
}
if(x>1)
rez=rez/x*(x-1);
return rez;
}
int cmmdc(int a, int b)
{
int r;
while(b)
{
r=a%b;
a=b;
b=r;
}
return a;
}
int main()
{
freopen("sum.in","r",stdin);
freopen("sum.out","w",stdout);
int n,t,i,j,k,x,aux,dc,rez;
scanf("%d",&t);
for(k=1;k<=t;k++)
{
scanf("%d",&x);
rez=phi(2*x)*x;
if(x%2==1)
{
aux=(2*x-2)/2;
rez+=aux*(aux+1);
}
printf("%d\n",rez);
}
return 0;
}