Cod sursa(job #1875672)
| Utilizator | Data | 11 februarie 2017 13:59:39 | |
|---|---|---|---|
| Problema | Sum | Scor | 85 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.63 kb |
#include <iostream>
#include <fstream>
#include <bitset>
using namespace std;
string problema = "sum";
ifstream in("sum.in");
ofstream out("sum.out");
long long n,x;
long long euler[100001];
int main()
{
in>>n;
for(int i = 1;i<=100000;i++)
euler[i]=i;
for(int i = 2; i<=100000; i++)
{
if(euler[i]==i)
{
for(int j = 1; j<=100000/i; j++)
{
euler[i*j]/=i;
euler[i*j]*=(i-1);
}
}
}
for(int i = 1; i<=n; i++)
{
in>>x;
out<<x*2*euler[x]<<'\n';
}
return 0;
}
