Pagini recente » Cod sursa (job #2274210) | Cod sursa (job #18310) | Cod sursa (job #2963603) | Cod sursa (job #2646694)
#include <bits/stdc++.h>
#define mod 9973
using namespace std;
ifstream fin ("ssnd.in");
ofstream fout ("ssnd.out");
long long lgput(long long a, long long b)
{
long long sol = 1;
while(b > 0) {
if(b & 1) sol = (a * sol) % mod;
a = (a * a) % mod;
b >>= 1;
}
return sol;
}
int main()
{
int test;
fin >> test;
for(; test; --test) {
long long n;
fin >> n;
int e = 0, card = 1;
long long sum = 1;
while(n % 2 == 0) ++e, n >>= 1;
card *= (e + 1);
sum *= ((lgput(2LL, 1LL * e + 1LL) - 1LL)) % mod;
for(int i = 3; i * i <= n; i += 2) {
e = 0;
while(n % i == 0) n /= i, ++e;
card *= (e + 1);
sum *= ((lgput(1LL * i, 1LL * e + 1LL) - 1LL) / (1LL * i - 1LL)) % mod;
}
if(n > 1) {
card *= 2;
sum *= ((lgput(n, 2LL) - 1LL) / (n - 1LL)) % mod;
}
fout << card << " " << sum % mod << "\n";
}
return 0;
}