Pagini recente » Cod sursa (job #2981475) | Cod sursa (job #1152104) | Cod sursa (job #2729627) | Monitorul de evaluare | Cod sursa (job #715934)
Cod sursa(job #715934)
#include<iostream>
#include<math.h>
#include<fstream>
#include<string.h>
#include<stdio.h>
const int MOD = 9973;
using namespace std;
ifstream fin ("ssnd.in");
ofstream fout ("ssnd.out");
long long n;
void function()
{
int nr_div = 1,suma = 1;
fin>>n;
for(int d = 2; n > 1 ; d++)
{
if(1LL*d*d > n)
break;
if(n % d)
continue;
int produs = 1,div = 0,s = 1;
while(n % d == 0)
{
produs *= d;
produs %= MOD;
s += produs;
if(s > MOD)
s -= MOD;
n /= d;
div++;
}
nr_div *= (div + 1);
suma *= s;
suma %= MOD;
}
if(n != 1)
{
nr_div *= 2;
suma = (1LL*suma*(n+1) % MOD);
}
fout<<nr_div<<" "<<suma<<endl;
}
int main()
{
int t;
for(fin >> t; t; --t)
function();
return 0;
}