Pagini recente » Cod sursa (job #3141326) | Cod sursa (job #2041484) | Cod sursa (job #1040420) | Cod sursa (job #1387496) | Cod sursa (job #2246012)
#include <iostream>
#include <fstream>
#include <math.h>
#define M 9973
std::ifstream in("ssnd.in");
std::ofstream out("ssnd.out");
using namespace std;
long long t,n;
void div(long long k,long long &a,long long &b)
{
long long p=2,numar,nrdiv=1,prod=1,aux=1,ink=k;
while(k>1 && p*p<=ink)
{
numar=0;
aux=p;
while(k%p==0)
{
numar++;
k/=p;
aux*=p;
}
if(k%p)
{
nrdiv=(nrdiv*(numar+1))%M;
prod=(prod* (1LL*((((aux-1)))/(p-1))))%M;
}
p++;
}
if(k>1)
{
nrdiv*=2;
prod*=(k*k-1)/(k-1);
}
a=nrdiv%M;
b=prod%M;
}
int main()
{
in>>n;
for(int i=0; i<n; i++)
{
long long a,b;
in>>t;
div(t,a,b);
out<<a<<" "<<b<<"\n";
}
return 0;
}