Pagini recente » Cod sursa (job #1839434) | Cod sursa (job #1687270) | Cod sursa (job #2474703) | Cod sursa (job #974919) | Cod sursa (job #1478902)
#include <bits/stdc++.h>
#define nmax 100010
using namespace std;
int a[nmax];
long long cnt;
int main()
{
int n, i, j, x;
ifstream fin("sum.in");
ofstream fout("sum.out");
fin >> n;
/// indicatorul lui Euler
for (j = 1; j <= nmax; j++)
a[j]=j;
for (i = 2; i <= nmax; i++)
if (a[i] == i)
for (j = i; j <= nmax; j += i)
a[j] = a[j] / i * (i - 1);
/// query
for (i = 1; i <= n; i++)
{
fin >> x;
cnt = 1LL * x * a[x] * 2;
fout << cnt << "\n";
}
fin.close();
fout.close();
return 0;
}