Pagini recente » Cod sursa (job #584472) | Cod sursa (job #706594) | Cod sursa (job #1151882) | Cod sursa (job #1175945) | Cod sursa (job #2467843)
#include <bits/stdc++.h>
#define Mod 9973
using namespace std;
ifstream fin("ssnd.in");
ofstream fout("ssnd.out");
int LogP(int a, int n)
{
int p;
for (p=1; n>0; n/=2)
{
if (n%2==1)
p=p*a%Mod;
a=a*a%Mod;
}
return p;
}
void Descomp(int n)
{
int p,e,nrdiv=1,sumdiv=1;
for (p=2; p*p<=n and n>1; p++)
if (n%p==0)
{
e=0;
while (n%p==0)
{
e++;
n/=p;
}
nrdiv*=(e+1);
sumdiv=1ll * sumdiv * (LogP(p,e+1)-1+Mod)*LogP(p-1,9971)%Mod;
}
if (n>1)
{
nrdiv*=2;
sumdiv=1ll*sumdiv*(n*n-1+Mod) * LogP(n-1,9971)%Mod;
}
fout << nrdiv << " " << sumdiv << "\n";
}
int main()
{
int t,n,i,x;
fin >> t;
for (i=1; i<=t; i++)
{
fin >> x;
Descomp(x);
}
return 0;
}