Pagini recente » Cod sursa (job #1290203) | Cod sursa (job #1666821) | Cod sursa (job #937470) | Cod sursa (job #2932468) | Cod sursa (job #2467847)
#include <bits/stdc++.h>
#define Mod 9973
using namespace std;
ifstream fin("ssnd.in");
ofstream fout("ssnd.out");
long long LogP(long long a, long long n)
{
long long p;
for(p = 1; n > 0; n/=2)
{
if(n % 2 == 1)
p = p * a % Mod;
a = a * a % Mod;
}
return p;
}
void Descomp(long long n)
{
long long p , e, nrDiv = 1, sumaDiv = 1;
for(p = 2; p * p <= n && n > 1; p++)
if(n % p == 0)
{
e = 0;
while(n % p == 0)
{
e++;
n/=p;
}
nrDiv *= (e + 1);
sumaDiv = sumaDiv * (LogP(p, e +1) - 1 + Mod)
* LogP(p - 1, 9971) %Mod;
}
if(n > 1)
{
nrDiv *= 2;
sumaDiv = 1LL*sumaDiv * (n * n - 1 + Mod)
* LogP(p - 1, 9971) %Mod;
}
fout << nrDiv << " " << sumaDiv << "\n";
}
int main()
{
int t;
long long n;
fin >> t;
while(t--)
{
fin >> n;
Descomp(n);
}
return 0;
}