Pagini recente » Cod sursa (job #440975) | Cod sursa (job #394381) | Cod sursa (job #894520) | Cod sursa (job #535385) | Cod sursa (job #1194250)
#include <fstream>
using namespace std;
long long pow(long long x, long long y)
{
long long p;
if (y == 1)
return x;
p = pow(x, y/2);
if (y % 2 == 0)
return p * p;
else
return p * p * x;
}
int main()
{
long long t, n, s, card, div, c;
ifstream infile ("ssnd.in");
ofstream outfile ("ssnd.out");
infile >> t;
for (i = 0; i < t; i++)
{
infile >> n;
div = 2;
s = 1;
card = 1;
while (n != 1)
{
c = 0;
while (n % div == 0)
{
n /= div;
c++;
}
if (c > 0)
{
s *= (pow(div, c + 1) - 1) / (div - 1);
card *= (c + 1);
}
div++;
}
outfile << card << " " << s << "\n";
}
outfile.close();
}