Cod sursa(job #3186309)

Utilizator Mihai_OctMihai Octavian Mihai_Oct Data 22 decembrie 2023 18:16:30
Problema Suma si numarul divizorilor Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.9 kb
#include <bits/stdc++.h>

using namespace std;

ifstream fin("ssnd.in");
ofstream fout("ssnd.out");
const int mod = 9973;
long long t, n, i;

int main() {
    fin >> t;
    while(t--) {
        fin >> n;
        long long d = 2;
        long long nr = 1;
	long long s = 1;

        while(d * d <= n && n > 1) {
            if(n % d == 0){
                long long e = 0;
                long long p = 1;

                while(n % d == 0) {
                    e++;
                    p *= d;
                    n /= d;
                }

                nr *= (e + 1);
                s *= (p * d - 1) / (d - 1);

		nr %= mod;
		s %= mod;
            }
            d++;
        }

        if(n > 1) {
            nr *= 2;
            s *= (n * n - 1) / (n - 1);

	    nr %= mod;
	    s %= mod;
        }

        fout << nr << " " << s << "\n";
    }

    return 0;
}