Pagini recente » Cod sursa (job #2616471) | Cod sursa (job #1803339) | Cod sursa (job #1680034) | Cod sursa (job #1223777) | Cod sursa (job #2506200)
#include <iostream>
#include <fstream>
#define N 100001
using namespace std;
ifstream fin ("sum.in");
ofstream fout ("sum.out");
bool Prim(int n)
{
if(n<2)return 0;
if(n==2)return 1;
if(n%2==0)return 0;
for(int i=3; i*i<=n; i+=2)
if(n%i==0)return 0;
return 1;
}
int CMMDC(int a, int b)
{
int r;
while(b)
{
r=a%b;
a=b;
b=r;
}
return a;
}
int main()
{
int n, i, m, x, j, s;
fin >> n;
for(i=1; i<=n; i++)
{
fin >> x;
if(Prim(x))
{
m = 2*x;
s = m*(m+1)/2;
s =s - x;
s =s - m;
fout << s;
fout << "\n";
}
else
{
m = 2*x;
s = m*(m+1)/2;
for(i=2; i<=m; i++)
if(CMMDC(i,x)!=1)
s = s - i;
fout << s;
fout << "\n";
}
}
return 0;
}