Pagini recente » Cod sursa (job #520949) | Cod sursa (job #1222898) | Cod sursa (job #628847) | Cod sursa (job #1510355) | Cod sursa (job #2413719)
#include <bits/stdc++.h>
#define Dim 1004
#define Mod 9973
#define Max 1000000
using namespace std;
ifstream f("ssnd.in");
ofstream g("ssnd.out");
int T,cnt;
bool prim[Max];
typedef long long ll;
ll X,A[78502];
void Ciur()
{
for(ll div=2;div*div<=Max;div++)
if(!prim[div])
{
for(ll nr=2*div;nr<=Max;nr+=div) prim[nr]=1;
}
for(ll i=2;i<=Max;i++)
if(!prim[i]) A[++cnt]=i;
}
int main()
{
Ciur();
f>>T;
for(int j=1;j<=T;j++)
{
f>>X;
int index=1;
ll ans1=1,ans2=1;
while(X!=1)
{
int cont=0; ll produs=A[index];
while(X%A[index]==0)
{
X/=A[index];
produs*=A[index];
cont++;
}
ans1*=(cont+1);
produs=(produs-1)/(A[index]-1);
ans2=((ans2*(produs%Mod))%Mod);
index++;
}
g<<ans1<<" "<<ans2<<'\n';
}
return 0;
}