Pagini recente » Cod sursa (job #2961095) | Cod sursa (job #2577496) | Cod sursa (job #940762) | Cod sursa (job #820088) | Cod sursa (job #2515287)
#include <fstream>
#define N 1000006
#define ll long long
#define M 9973
using namespace std;
ifstream in("ssnd.in");
ofstream out("ssnd.out");
int p[N/2];
bool v[N];
int main(){
ll t,n,i,k=0,d,s,j;
for(i=2; i<N; ++i){
if(!v[i]){
p[++k]=i;
for(j=2*i; j<N; j+=i)
v[j]=1;
}
}
in>>t;
while(t--){
in>>n;
i=s=d=1;
for(i=1; p[i] && p[i]*p[i]<=n; ++i){
if(n%p[i]) continue;
k=1;
j=p[i];
while(n%p[i]==0){
n/=p[i];
++k;
j*=p[i];
}
d*=k;
s=(s*((j-1)/(p[i]-1))%M)%M;
}
if(n!=1) d*=2, s=(s*(n+1))%M;
out<<d<<" "<<s<<"\n";
}
return 0;
}