Pagini recente » Cod sursa (job #1183545) | Cod sursa (job #2396754) | Cod sursa (job #486649) | Cod sursa (job #2661946) | Cod sursa (job #1412069)
#include <bits/stdc++.h>
#define mod 9973
using namespace std;
long long n, t, sd, cnt, nd, term, prim, p[1000005], np , i, j, sum;
void ciur()
{
np = 1;
p[1] = 2;
for(i = 3; i <= 1000; i += 2)
if(!p[i])
{
p[++np] = i;
for(j = i * i; j <= 1000000; j += 2 * i)
p[j] = 1;
}
for(; i <= 1000000; i += 2)
if(!p[i])
p[++np] = i;
}
int main()
{
freopen("ssnd.in", "r", stdin);
freopen("ssnd.out", "w", stdout);
ciur();
scanf("%lld", &t);
for(; t; t--)
{
scanf("%lld", &n);
sd = nd = 1;
for(i = 1; i <= np && p[i]*p[i] <= n; i++)
{
sum = cnt = term = 1;
prim = p[i] % mod;
while(n % p[i] == 0)
{
cnt++;
term = (term * prim) % mod;
sum = (sum + term) % mod;
n /= p[i];
}
sd = (sum * sd) % mod;
nd *= cnt;
}
if(n > 1)
{
sd = (sd * (n + 1)) % mod;
nd *= 2;
}
printf("%lld %lld\n", nd, sd);
}
return 0;
}