Cod sursa(job #652373)
Utilizator | Data | 24 decembrie 2011 10:59:05 | |
---|---|---|---|
Problema | Suma si numarul divizorilor | Scor | 10 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.54 kb |
#include <fstream>
#include <cmath>
using namespace std;
long long n,i,t,s,nr,j;
int main()
{
ifstream f("ssnd.in");
ofstream g("ssnd.out");
f>>n;
for (i=1;i<=n;i++) {
f>>t;
s=1+t;
nr=2;
for (j=2;j<=trunc(sqrt(t));j++)
if (t%j==0) if (j!=t/j) {s=s+j+t/j;nr=nr+2;}
else {
s=s+j;nr++;
}
g<<nr<<' '<<s<<'\n';
}
f.close();
g.close();
return 0;
}