Pagini recente » Cod sursa (job #3264174) | Cod sursa (job #1152755) | Cod sursa (job #2817578) | Cod sursa (job #2097919) | Cod sursa (job #1891309)
#include <cstdio>
using namespace std;
bool a[1000001];
short t;
int i,p,x,nd,sd;
long long int n;
int main()
{
freopen("ssnd.in","r",stdin);
freopen("ssnd.out","w",stdout);
a[0]=a[1]=1;
for(nd=2;nd<=1000000;nd++)
if(!a[nd])
for(sd=nd*2;sd<=1000000;sd+=nd)
a[sd]=1;
scanf("%hd",&t);
while(t)
{
scanf("%lld",&n);
nd=sd=1;
if(n>1)
for(i=2;i*i<=n;i++)
if(!a[i] && n%i==0)
{
p=0;
x=i;
while(n%i==0)
{
p++;
x=(x*i)%9973;
n/=i;
}
nd*=(p+1);
sd=sd*(x-1)/(i-1)%9973;
if(n==1)
break;
}
if(n>1)
{
nd*=2;
sd=(sd*(n+1))%9973;
}
printf("%d %d\n",nd,sd);
t--;
}
return 0;
}