Pagini recente » Cod sursa (job #1395630) | Cod sursa (job #1321232) | Cod sursa (job #1020951) | Cod sursa (job #1623496) | Cod sursa (job #470265)
Cod sursa(job #470265)
#include<cstdio>
void read(), solve(),ciur(), solve_test();
long long t,n,SD,ND,M,P,S,p[100001],k,j,i;
int main()
{
read();
solve();
return 0;
}
void read()
{
freopen("ssnd.in","r",stdin);
freopen("ssnd.out","w",stdout);
scanf("%lld",&t);
}
void solve()
{
ciur();
for(;t;t--)
solve_test();
}
void ciur()
{
for(i=2;i<=100000;i++)
if(!p[i])
{
p[++k]=i;
for(j=i;j<=100000;j+=i)
p[j]=1;
}
}
void solve_test()
{
scanf("%lld",&n);
SD=1; ND=1;
for(i=1;i<=k;i++)
{
if(p[k]*p[k]>n) break;
if(n%p[k]==0)
{
P=1;
S=1;
M=0;
while(n%p[k]==0)
{
P*=p[k]; P%=9973;
S+=P; S%=9973;
M++;
n/=p[k];
}
SD*=S; SD%=9973;
ND*=M+1;
}
}
if(n>1)
{
ND*=2;
SD%=9973;
}
printf("%lld %lld\n",ND,SD);
}