Pagini recente » Cod sursa (job #216800) | Cod sursa (job #2693112) | Cod sursa (job #2483309) | Cod sursa (job #170193) | Cod sursa (job #1777799)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("sum.in");
ofstream fout("sum.out");
int N, testCount, X, solution;
bitset<100010>v;
void ciur(int i)
{
for(int j = i; j <= 2 * X; j += i)
{
if(v[j] == 0)
{
v[j] = 1;
solution -= j;
}
}
}
int main()
{
fin >> testCount;
while(testCount --)
{
fin >> X;
v.reset();
solution = (2 * X)*(2 * X + 1) / 2;
int i;
for(i = 2; i * i <= X; i ++)
{
if(X % i == 0)
{
ciur(i);
}
}
if(X % i == 0)
{
ciur(i);
}
if(v[X] == 0)
{
solution -= X;
}
if(v[2 * X] == 0)
{
solution -= 2 * X;
}
fout << solution << '\n';
}
return 0;
}