Pagini recente » Cod sursa (job #2578640) | Cod sursa (job #3039838) | Cod sursa (job #1880633) | Cod sursa (job #1891954) | Cod sursa (job #1495169)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream cin("ssnd.in");
ofstream cout("ssnd.out");
const int LIM=1000000, MOD=9973;
int t, np, p[LIM+14];
void ciur()
{
p[++np]=2;
int i;
for(i=3; i*i<LIM+14; i+=2)
if(!p[i])
{
p[++np]=i;
for(int j=i*i; j<LIM+14; j+=i+i)
p[j]=1;
}
for(;i<LIM+14; i+=2)
if(!p[i])
p[++np]=i;
}
int main()
{
ciur();
cin>>t;
while(t--)
{
long long n, nr_div=1, sum_div=1;
int id=1;
cin>>n;
while(n>1)
{
long long f=p[id];
int put=0;
long long x=1, cur=1;
if(f*f>n) f=n;
while(n%f==0)
{
put++;
x*=f, cur+=x;
n/=f;
}
nr_div*=put+1;
sum_div=(sum_div*cur)%MOD;
id++;
}
cout<<nr_div<<' '<<sum_div<<'\n';
}
return 0;
}