Cod sursa(job #1865023)
| Utilizator | Data | 1 februarie 2017 10:55:01 | |
|---|---|---|---|
| Problema | Sum | Scor | 85 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.56 kb |
#include <fstream>
using namespace std;
ifstream fin ("sum.in");
ofstream fout("sum.out");
long long v[100010],fi[100010];
long long n,i,j,mx;
int main()
{
fin >> n;
for (i=1;i<=n;++i)
{
fin >> v[i] ;
if (v[i]>mx) mx=v[i];
}
// fi[1]=1;
for (i=2;i<=mx;++i)
{
fi[i]=i-1;
}
for (i=1;i<=mx;++i)
{
for (j=i+i;j<=mx;j+=i)
{
fi[j]-=fi[i];
}
}
for (i=1;i<=n;++i)
{
fout << 2*fi[v[i]]*v[i] << '\n';
}
return 0;
}
