Pagini recente » Cod sursa (job #2592355) | Cod sursa (job #2873691) | Cod sursa (job #1624113) | Cod sursa (job #1480925) | Cod sursa (job #1608332)
#include <bits/stdc++.h>
#define N 100
#define mod 9973
using namespace std;
string s = "ssnd.";
ifstream f(s+"in");
ofstream g(s+"out");
char ch[N+1];
vector<int> pr;
long long int logexp(int a,int p)
{
int r=1,i;
for (i=1;i<=p;i<<=1)
{
if (p&i)
r=1ll*r*a;
a=a*a;
}
return r;
}
int main()
{
int t,ct,x,nrd,sumd,i,j;
for(i=2;i<=N;++i)
if (ch[i]==0)
{
for (j=i<<1;j<=N;j+=i)
ch[j]=1;
pr.push_back(i);
}
f>>t;
while(t--)
{
f>>x;
nrd=sumd=1;
for (i=0;1ll*pr[i]<=x && i<pr.size();++i)
if(x%pr[i]==0)
{
ct=0;
while(x%pr[i]==0)
{
++ct;
x/=pr[i];
}
nrd=nrd*(ct+1);
sumd=sumd*(1ll*(logexp(pr[i],ct+1)-1)/(pr[i]-1))%mod;
}
if (x!=1)
{
nrd=nrd*2;
sumd=1ll*sumd*(i+1)%mod;
}
g<<nrd<<" "<<sumd<<'\n';
}
return 0;
}