Pagini recente » Cod sursa (job #882887) | Cod sursa (job #1237803) | Cod sursa (job #1029143) | Cod sursa (job #2125166) | Cod sursa (job #1882349)
#include <iostream>
#include <cstdio>
using namespace std;
long long indicator(int n){
long long s = 1;
if((n % 2 ) == 0){
n /= 2;
while( (n % 2 ) == 0){
s *= 2;
n /= 2;
}
s *= 1;
}
for(int i = 3 ; i * i <= n ;i+= 2){
if((n % i ) == 0){
n /= i;
while( (n % i ) == 0){
s *= i;
n /= i;
}
s *= (i - 1);
}
}
if(1 < n){
s *= (n - 1);
}
return s;
}
int main()
{
int n ;
int a ;
freopen("sum.in","r",stdin);
freopen("sum.out","w",stdout);
scanf("%d",&n);
for(int i = 0 ; i < n;i++){
scanf("%d",&a);
printf("%lld\n",a * indicator(a) * 2LL);
}
return 0;
}