Cod sursa(job #1732280)
| Utilizator | Data | 21 iulie 2016 13:03:08 | |
|---|---|---|---|
| Problema | Suma si numarul divizorilor | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.66 kb |
#include <fstream>
#include <math.h>
using namespace std;
int main()
{
int n;
long long m;
ifstream fin("ssnd.in");
ofstream fout("ssnd.out");
fin >> n;
for ( int i = 1; i <= n; i++ )
{
fin >> m;
if ( m == 1 )
{
fout << "1 1" << endl;
}
int s = m + 1, nrs = 2;
for ( int i = 2; i <= sqrt(m); i++ )
{
if ( m % i == 0 )
{
s = s + i + m / i;
nrs += 2;
}
}
fout << nrs << " " << s << endl;
}
fin.close();
fout.close();
return 0;
}
