Cod sursa(job #2257281)

Utilizator Cristian25Cristian Stanciu Cristian25 Data 9 octombrie 2018 21:27:49
Problema Suma si numarul divizorilor Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.66 kb
#include <fstream>
#include <cmath>
#define modulo(a) a % 9973

using namespace std;
ifstream in("ssnd.in");
ofstream out("ssnd.out");
unsigned short t;
int main()
{
    in >> t;
    for(unsigned short i = 0; i != t; ++i)
    {
        unsigned long long n, cont, sum;
        in >> n;
        long double rad = sqrt(n);
        pow(rad, 2) == n ? (sum = 1 + n + rad, cont = 3) : (sum = 1 + n, cont = 2);
        for(unsigned long long j = 2; j < rad; ++j)
            if(!(n % j))
            {
                sum += j + n / j;
                cont += 2;
            }
        out << cont << ' ' << modulo(sum) << '\n';
    }
    return 0;
}