Pagini recente » Cod sursa (job #2633417) | Cod sursa (job #1692063) | Cod sursa (job #735455) | Cod sursa (job #2441752) | Cod sursa (job #1771196)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("ssnd.in");
ofstream fout("ssnd.out");
const long long MOD = 9973;
inline long long power(long long a, long long b) {
long long ans = 1;
if (a < 2)
return a;
for (long long i = 0; (1LL << i) <= b; ++i) {
if (b & (1LL << i)) {
ans = (ans * a) % MOD;
}
a = (a * a) % MOD;
}
return ans % MOD;
}
inline void solve() {
long long n;
fin >> n;
long long d = 2, e;
long long s = 1, nr = 1;
long long a, b;
while (n > 1) {
e = 0;
while (n % d == 0) {
++e;
n /= d;
}
nr = ((nr % MOD) * ((e + 1) % MOD)) % MOD;
a = (power(d, e + 1) + MOD - 1) % MOD;
b = power(d - 1, MOD - 2);
s = ((s % MOD) * (a % MOD) * (b % MOD)) % MOD;
if (d * d > n) {
d = n;
}
else {
if (d == 2)
++d;
else
d += 2;
}
}
fout << nr << ' ' << s << '\n';
}
int main()
{
long long t;
for (fin >> t; t; --t) {
solve();
}
return 0;
}