Cod sursa(job #2609885)

Utilizator razvan44Sfechis Razvan razvan44 Data 3 mai 2020 19:13:03
Problema Suma si numarul divizorilor Scor 40
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.86 kb
#include <fstream>

using namespace std;

int nr_div(unsigned long long n)
{
    int i, cnt = 0;;
    for (i = 1; i * i < n; ++i)
    {
        if (n % i == 0)
            cnt += 2;
    }

    if (i * i == n) cnt++;

    return cnt;
}

unsigned long long sum_div(unsigned long long n)
{
    unsigned long long sd = 0;
    int i;
    for (i = 1; i * i < n; ++i)
    {
        if (n % i == 0)
            sd += i, sd += (n / i);
    }

    if (i * i == n)
        sd += i;

    return 1LL * sd % 9973;
}

int main()
{
    int t;
    unsigned long long n;
    unsigned long long S = 0;

    ifstream cin("ssnd.in");
    ofstream cout("ssnd.out");

    cin >> t;
    for (; t; --t) // in loc de asta puteai sa scrii : for (int i = 1; i <= t; ++i)
    {
        cin >> n;

        cout << nr_div(n) << ' ' << sum_div(n) << '\n';
    }
}