Pagini recente » Cod sursa (job #1575912) | Cod sursa (job #2208006) | Cod sursa (job #1723778) | Cod sursa (job #1888377) | Cod sursa (job #875744)
Cod sursa(job #875744)
#include <cstdio>
#define mod 9973
#define N 1000005
using namespace std;
bool viz[N];
int p[N],k;
void ciur()
{ int i,j;
for(i=2;i<N;++i)
if(viz[i]==0)
{
p[++k]=i;
for(j=i+i;j<N;j+=i)
viz[j]=1;
}
}
int main()
{ int n,nr,sd,i,d,y;
long long x;
k=0;
ciur();
freopen("ssnd.in","r",stdin); freopen("ssnd.out","w",stdout);
scanf("%d\n",&n);
for(;n>=1;--n)
{
scanf("%I64d\n",&x);
nr=1; sd=1;
for(i=1;p[i]*p[i]<=x;++i)
if(x%p[i]==0)
{
d=0; y=1;
while(x%p[i]==0)
{
x/=p[i]; ++d; y=y*p[i];
}
y=(y*p[i]-1)/(p[i]-1); sd=(sd*y)%mod;
nr=nr*(d+1);
}
if(x!=1)
{
y=(x*x-1)/(x-1); sd=(sd*y)%mod;
nr=nr*2;
}
printf("%d %d\n",nr,sd);
}
fclose(stdin);
fclose(stdout);
return 0;
}