Pagini recente » Cod sursa (job #479163) | Cod sursa (job #1654209) | Cod sursa (job #2526220) | Cod sursa (job #2311144) | Cod sursa (job #270104)
Cod sursa(job #270104)
#include<fstream>
#define N 100010
using namespace std;
ifstream in ("sum.in");
ofstream out ("sum.out");
int x[N],n,phi[N];
void citire ()
{
in>>n;
for(int i=1;i<=n;i++)
in>>x[i];
}
int maxim ()
{
int maxim=0;
for(int i=1;i<=n;i++)
{
if(maxim<x[i])
maxim=x[i];
}
return maxim;
}
void calcul (int n)
{
for(int i=1;i<=n;i++)
phi[i]=i;
for(int i=2;i<=n;i++)
{
if(phi[i]==i)
{
for(int j=i;j<=n;j=j+i)
phi[j]=(phi[j]/i)*(i-1);
}
}
}
int main ()
{
int m;
citire ();
m=maxim ();
calcul (m);
for(int i=1;i<=n;i++)
out<<2*x[i]*phi[x[i]]<<endl;
in.close ();
out.close ();
return 0;
}