Pagini recente » Monitorul de evaluare | Monitorul de evaluare | Istoria paginii runda/info_conquiztador002 | Cod sursa (job #3131750) | Cod sursa (job #2852891)
#include <bits/stdc++.h>
#define MOD 9973
using namespace std;
ifstream fin("ssnd.in");
ofstream fout("ssnd.out");
long long int putere(long long int a, int n) {
long long int res = 1LL;
while(n > 0) {
if(n % 2 == 1) {
res = (res * a) % MOD;
}
a = (a * a) % MOD;
n /= 2;
}
return res;
}
int t;
long long int n;
int main() {
fin >> t;
while(t > 0) {
fin >> n;
long long int ans1 = 1LL, ans2 = 1LL;
long long int m = n, d = 2LL;
while(m > 1) {
int p = 0;
while(m % d == 0) {
p++;
m /= d;
}
if(p > 0) {
ans1 = (ans1 * ((p + 1) % MOD)) % MOD;
ans2 = (ans2 * (putere(d, p + 1) - 1) * putere(d - 1, MOD - 2)) % MOD;
}
d++;
if(d * d > m) {
d = m;
}
}
fout << ans1 << " " << ans2 << "\n";
t--;
}
fin.close();
return 0;
}