Pagini recente » Cod sursa (job #2254756) | Cod sursa (job #2017885) | Cod sursa (job #118624) | Cod sursa (job #510169) | Cod sursa (job #822456)
Cod sursa(job #822456)
#include<cstdio>
#include<bitset>
#define MOD 9973
using namespace std;
bitset<1000000> B;
int i,j,k,np,x[80000],t,nd,sd,pc,*P,e;
long long n,s,p,f;
int main()
{
freopen("ssnd.in","r",stdin);
freopen("ssnd.out","w",stdout);
x[1]=2;np=1;
for(i=3;i<=1000;i+=2)
if(!B[i])
{
x[++np]=i;
k=2*i;
for(j=i*i;j<=1000000;j+=k) B[j]=1;
}
for(i=1001;i<=1000000;i+=2)
if(!B[i]) x[++np]=i;
scanf("%d",&t);
for(;t;t--)
{
scanf("%lld",&n);
nd=1;sd=1;
for(P=x+1;*P&&n-1;P++)
if(!(n%*P))
{
for(e=1;n%*P==0;n/=*P,e++);nd*=e;
s=0;f=*P%MOD;p=1;
for(;e;e--)
{
s+=p;
p*=f;
}
// s%=MOD;
sd=(sd*s)%MOD;
}
if(n>1)
{
nd*=2;
n=(n+1)%MOD;
sd=(sd*n)%MOD;
}
printf("%d %d\n",nd,sd);
}
return 0;
}