Pagini recente » Cod sursa (job #1821749) | Cod sursa (job #2852310) | Cod sursa (job #2194266) | Cod sursa (job #1921796) | Cod sursa (job #3314842)
#include <bits/stdc++.h>
using namespace std;
constexpr int MOD = 9973;
int long long lgput(int long long a, int long long n, int MOD)
{
int long long p = 1;
a %= MOD;
for(; n; n >>= 1) {
if(n & 1)
p = p * a % MOD;
a = a * a % MOD;
}
return p % MOD;
}
void solve()
{
long long n, nrDiv = 1, sumDiv = 1;
scanf("%lld", &n);
long long d = 2;
while(n > 1) {
long long p = 0;
while(n % d == 0) {
n /= d;
++p;
}
if(p) {
nrDiv *= p + 1;
sumDiv *= ((lgput(d, p+1, MOD) - 1) / (d - 1)) % MOD;
}
++d;
if(d * d > n)
d = n;
}
printf("%lld %lld\n", nrDiv, sumDiv);
}
signed main()
{
#ifndef LOCAL
freopen("ssnd.in", "r", stdin);
freopen("ssnd.out", "w", stdout);
#endif
int t;
scanf("%d", &t);
while(t--)
solve();
return 0;
}