Pagini recente » Istoria paginii utilizator/maky | Monitorul de evaluare | Monitorul de evaluare | Diferente pentru autumn19/clasament intre reviziile 53 si 15 | Cod sursa (job #1473670)
#include<cstdio>
#define MAX 100005
using namespace std;
int N, T, i, j;
int phi[MAX];
int main()
{
freopen("sum.in","r",stdin);
freopen("sum.out","w",stdout);
scanf("%d", &T);
for (i = 1; i <= MAX; i++) phi[i]=i;
for (i = 2; i <= MAX; i++)
if (phi[i] == i)
for (j = i; j <= MAX; j += i)
phi[j] /=i, phi[j] *= (i-1);
for ( ; T; T--)
{
scanf("%d", &N);
printf("%lld\n", 1LL * N * phi[N] * 2);
}
}