Pagini recente » Cod sursa (job #2736737) | Cod sursa (job #2005185) | Cod sursa (job #1967831) | Cod sursa (job #2933765) | Cod sursa (job #792111)
Cod sursa(job #792111)
#include <stdio.h>
char pr[1000001];
int p[100000];
void ciur()
{
int i,j,n=0;
for(i=2;i*i<=1000000;i++)
if(pr[i]==0)
{
for(j=i*i;j<=1000000;j+=i)
pr[j]=1;
}
n=0;
for(i=2;i<=1000000;i++)
if(pr[i]==0)
p[++n]=i;
}
int main()
{
FILE *f,*g;
f=fopen("ssnd.in","r");
g=fopen("ssnd.out","w");
int n,i,t,z,nr=1,s=1,e,pu;
ciur();
fscanf(f,"%d",&t);
for(z=1;z<=t;z++)
{
fscanf(f,"%d",&n);
nr=1;
s=1;
for(i=1;p[i]*p[i]<=n;i++)
if(n%p[i]==0)
{
e=0;
pu=1;
while(n%p[i]==0)
{
e++;
pu*=p[i];
n/=p[i];
}
nr=nr*(e+1);
s=s*(pu*p[i]-1)/(p[i]-1)%9973;
}
if(n!=1)
{
nr=nr*2;
s=s*(n+1)%9973;
}
fprintf(g,"%d %d\n",nr,s);
}
return 0;
}