Pagini recente » Cod sursa (job #1868823) | Cod sursa (job #2658063) | Cod sursa (job #3284957) | Cod sursa (job #601073) | Cod sursa (job #2855059)
#include <fstream>
#define mod 9973
using namespace std;
ifstream fin("ssnd.in");
ofstream fout("ssnd.out");
long long n,x;
int t,i,j,k,nr,s,e,p[100001];
bool ciur[1000001];
int putere(int a,int n) {
int p=1;
while (n!=0) {
if (n%2!=0)
p=1LL*p*a%mod;
a=1LL*a*a%mod;
n/=2;
}
return p;
}
int main() {
k=0;
for (i=3;i<=1000;i+=2)
if (ciur[i]==0)
for (j=2*i;j<=1000000;j+=i)
ciur[j]=1;
k=1;
p[1]=2;
for (i=3;i<=1000000;i+=2)
if (ciur[i]==0)
p[++k]=i;
fin>>t;
while (t--) {
fin>>n;
x=n;
nr=1;
s=1;
for (i=1;i<=k && 1LL*p[i]*p[i]<=n;i++)
if (x%p[i]==0) {
e=0;
while (x%p[i]==0) {
e++;
x/=p[i];
}
nr*=(e+1);
s=1LL*s*(putere(p[i],e+1)-1)%mod*putere(p[i]-1,mod-2)%mod;
}
if (x!=1) {
nr*=2;
s=1LL*s*(x+1)%mod;
}
fout<<nr<<" "<<s<<"\n";
}
return 0;
}