Cod sursa(job #752012)
| Utilizator | Data | 27 mai 2012 17:31:01 | |
|---|---|---|---|
| Problema | Sum | Scor | 45 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 1.1 kb |
#include<iostream>
#include<fstream>
using namespace std;
ifstream f("sum.in");
ofstream g("sum.out");
int main()
{
int n,x,div[800],k,i,cp,j,l,s,rez;
int ind;
f>>n;
for(i=1; i<=n; i++)
{
f>>x;
k=0;
//Descompunerea nr in factori primi
ind = 2;
cp = x;
int ok=0;
while(cp != 1)
{
//cout<<cp<<" ";
if(cp % ind == 0)
{
cp/=ind;
if(ok == 0)
{
k++;
div[k] = ind;
}
ok = 1;
}
else
{
ok = 0;
ind++;
}
}
//Calculare suma
s=1;
rez = 2*x;
for(l=2; l<=rez; l++)
{
ok = 0;
for(j=1; j<=k; j++)
if(l % div[j] == 0){
ok = 1;
break;
}
if(ok == 0)
s+=l;
}
g<<s<<"\n";
}
f.close();
g.close();
return 0;
}
