Pagini recente » Cod sursa (job #1818036) | Cod sursa (job #2342085) | Cod sursa (job #1229021) | Cod sursa (job #2880977) | Cod sursa (job #742215)
Cod sursa(job #742215)
#include<fstream>
#include<cmath>
using namespace std;
long long d,nr,c,s,n,a;
int t;
int p[1000005];
bool v[1000005];
ifstream fin("ssnd.in");
ofstream fout("ssnd.out");
void ciur()
{
v[1]=1;
for(int i=2;i<1000005;i++)
{
if(v[i]==0)
{
p[++p[0]]=i;
for(int j=i+i;j<=1000005;j+=i)
v[j]=1;
}
}
}
int main()
{
fin>>t;
ciur();
for(int x=1;x<=t;x++)
{
fin>>n;s=1;nr=1;
for(int i=1;(long long)p[i]*p[i]<=n;i++)
{
c=0;a=p[i];
while(n%p[i]==0)
n/=p[i],c++,a=a*p[i];
nr*=c+1;
s*=(a-1)/(p[i]-1)%9973;
}
if(n>1)
nr*=2,s*=(n+1)%9973;
fout<<nr<<" "<<s%9973<<"\n";
}
}