Pagini recente » Cod sursa (job #792269) | Cod sursa (job #1188469) | Cod sursa (job #2260184) | Cod sursa (job #1361379) | Cod sursa (job #1006614)
#include <fstream>
using namespace std;
ifstream f("ssnd.in");
ofstream g("ssnd.out");
int i,j,nr,p[100000],nrr,nre,t;
long long n,s,b;
bool ok;
int main()
{
f>>t;
p[1]=2;
nr=1;
for(i=3; i<=999999; i+=2)
{
ok=true;
for(j=1; j<=nr && p[j]*p[j]<=i; ++j )
if(i%p[j]==0)
{
ok=false;
break;
}
if(ok) p[++nr]=i;
}
for(i=1; i<=t; ++i)
{
f>>n;
nre=1;
s=1;
for(j=1; j<=nr && n>1; ++j)
{
b=p[j];
nrr=1;
while(n%p[j]==0)
{
n/=p[j];
b*=p[j];
++nrr;
}
nre*=nrr;
s=(s*(b-1)/(p[j]-1))%9973;
}
if (n>1){
nre*=2;s=(s*(n*n-1)/(n-1))%9973; }
g<<nre<<" "<<s<<'\n';
}
return 0;
}