Pagini recente » Cod sursa (job #3181413) | Cod sursa (job #2786911) | clasament-arhiva-educationala | Cod sursa (job #2529786) | Cod sursa (job #2529783)
#include <fstream>
#include <vector>
#define mod 9973
using namespace std;
ifstream cin("ssnd.in");
ofstream cout("ssnd.out");
const long long lim=1000000;
bool v[lim+5];
vector<long long> primes;
void ciur()
{
primes.push_back(2);
for(long long i=3;i<=lim;i+=2)
if(v[i]==0)
{
primes.push_back(i);
for(long long j=2*i;j<=lim;j+=i)
v[j]=1;
}
}
int main()
{
int t;
long long n;
ciur();
cin>>t;
for(int w=1;w<=t;++w)
{
long long nrdiv=1,sum=1;
cin>>n;
for(int i=0;i<primes.size() and primes[i]*primes[i]<=n and n>1;++i)
if(n%primes[i]==0)
{
long long exp=0,aux=1,p=1;
while(n%primes[i]==0)
++exp,n/=primes[i],p=(p*primes[i])%mod,aux=(aux+p)%mod;
nrdiv*=(exp+1);
sum=(sum*aux)%mod;
}
if(n>1)
{
nrdiv*=2;
n%=mod;
sum=(sum*((1+n)%mod))%mod;
}
cout<<nrdiv<<' '<<sum<<'\n';
}
return 0;
}