Pagini recente » Cod sursa (job #2157063) | Cod sursa (job #2591474) | Cod sursa (job #395286) | Cod sursa (job #1459807) | Cod sursa (job #3227347)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("ssnd.in");
ofstream g("ssnd.out");
int putere(int x, int y)
{
int p = 1;
while(y)
{
if(y % 2)
p *= x%9973;
x *= x%9973;
y /= 2;
}
return p;
}
void ssnd(int n)
{
int d = 2, nrdiv = 1, sumdiv = 1;
while(n > 1)
{
int p = 0;
while(n % d == 0)
{
p++;
n /= d;
}
if(p)
{
nrdiv *= (p + 1);
sumdiv *= ((putere(d, p + 1)%9973 - 1)/(d - 1))%9973;
}
d++;
if(d * d > n)
d = n;
}
g << nrdiv << ' ' << sumdiv << '\n';
}
int main()
{
int t;
f >> t;
while(t)
{
int n;
f >> n;
ssnd(n);
t--;
}
return 0;
}