Pagini recente » Cod sursa (job #1927828) | Cod sursa (job #1471268) | Cod sursa (job #1059042) | Cod sursa (job #2734372) | Cod sursa (job #2129405)
#include <bits/stdc++.h>
using namespace std;
unsigned long long int pow1 (int a,int b)
{
unsigned long long int s = 1;
for (int i = 0;i < b;i++)
s *= a;
return s;
}
int main()
{
ifstream fin("ssnd.in");
ofstream fout("ssnd.out");
int n,a,cnt,div;
unsigned long long int nr,s;
fin >> n;
for (int i = 0;i < n;i++)
{
fin >> a;
cnt = 0;
nr = 1;
s = 1;
div = 3;
while (a % 2 == 0)
{
cnt++;
a /= 2;
}
if (cnt > 0)
{
nr = cnt + 1;
s = pow1(2,cnt + 1);
s--;
}
s %= 9973;
while (div * div <= a && a > 1)
{
cnt = 0;
while (a % div == 0)
{
cnt++;
a /= div;
}
if (cnt > 0)
{
nr *= cnt + 1;
s *= (pow1(div,cnt + 1) - 1);
s /= (div - 1);
s %= 9973;
}
div += 2;
}
if (a != 1)
{
nr *= 2;
s *= (a * a - 1);
s /= (a - 1);
s %= 9973;
}
fout << nr << " " << s << '\n';
}
return 0;
}