Pagini recente » Cod sursa (job #2077840) | Cod sursa (job #750632) | Cod sursa (job #3150709) | Cod sursa (job #3150540) | Cod sursa (job #531256)
Cod sursa(job #531256)
#include <fstream>
using namespace std;
const int N=100001;
int v[N],p[N];
ifstream in("sum.in");
ofstream out("sum.out");
void ciur()
{
int i,j;
for (i=2;i<N;i++)
v[i]=p[i]=i;
for (i=2;i<N;i++)
if (v[i]==i)
for (j=i;j<N;j+=i)
v[j]=v[j]/i*(i-1);
for (i=2;i*i<N;i++)
if (p[i])
{
for (j=i*i;j<N;j+=i)
p[j]=0;
p[i]+=p[i-1];
}
}
int main()
{
long long t,x;
in>>t;
ciur();
while (t--)
{
in>>x;
out<<(long long)2*x*v[x]<<"\n";
}
return 0;
}