Pagini recente » Cod sursa (job #2864779) | Cod sursa (job #3161163) | Cod sursa (job #3263411) | Cod sursa (job #2192360) | Cod sursa (job #2660391)
#include <bits/stdc++.h>
#define MOD 9973
using namespace std;
ifstream f("ssnd.in");
ofstream g("ssnd.out");
const int N = 1000001;
vector <int> v;
bool w[N];
int n, q;
long long x, nrd, sumdiv, nr, fm;
void pre()
{
for(int i = 2; i <= N; ++ i)
{
if(!w[i])
{
v.push_back(i);
for(int j = i + i; j <= N; j += i)
w[j] = 1;
}
}
}
int main()
{
pre();
f >> n;
for(; n; n --)
{
f >> x;
nrd = sumdiv = 1;
q = 0;
do
{
fm = 0;
nr = 1;
while(x % v[q] == 0)
{
fm ++;
x /= v[q];
nr = nr * v[q];
}
if(fm > 0)
{
nrd = nrd * (fm + 1);
sumdiv = ( sumdiv * (nr * v[q] - 1) / (v[q] - 1) ) % MOD;
}
q ++;
if(v[q] * v[q] > x && x > 1)
{
nrd = nrd * 2;
sumdiv = ( sumdiv * (x + 1) ) % MOD;
x = 1;
}
}while(x > 1);
g << nrd << " " << sumdiv << "\n";
}
return 0;
}