Pagini recente » Istoria paginii runda/sim_v2 | Istoria paginii utilizator/dariaivascu05 | Cod sursa (job #72648) | Cod sursa (job #1534428) | Cod sursa (job #461187)
Cod sursa(job #461187)
#include <fstream>
using namespace std;
#define dim 1000003
int v[dim], q[100000];
int main()
{
long long i, j, t, n, nr, s;
long long unsigned p, div, aux;
ifstream fin("ssnd.in");
ofstream fout("ssnd.out");
fin>>t;
int f=0;
for(i=2;i<=1000000;++i)
if(v[i]==0)
{
q[f]=i;
++f;
for(j=i*i;j<=1000000;j+=i)
v[j]=1;
}
for(i=1;i<=t;++i)
{
fin>>n;
j=0;
nr=0;
s=1;
div=1;
aux=n;
while(q[j]*q[j]<=n)
{
p=1;nr=0;
while(n%q[j]==0)
{
++nr;
p*=q[j];
//s=(s+q[j])%9973;
n/=q[j];
}
div*=(nr+1);
s*=(((p*q[j])-1)/(q[j]-1))%9973;
++j;
n=aux;
}
if(v[n]==0)
fout<<"2" <<" " <<n+1;
else
fout<<div <<" " <<s%9973 <<'\n';
}
return 0;
}