Pagini recente » Cod sursa (job #850188) | Cod sursa (job #1416281) | Cod sursa (job #179716) | Cod sursa (job #2586013) | Cod sursa (job #2245187)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin ("ssnd.in");
ofstream fout ("ssnd.out");
void solve(int x);
int suma_partiala(int f, int p);
int T, x;
int main()
{
fin >> T;
for( ;T--; )
{
fin >> x;
solve(x);
}
return 0;
}
void solve(int x)
{
int f=2, sdiv=1, nrdiv=1, p;
while(f*f<=x)
{
p = 0;
while(x%f==0)
{
p++;
x/=f;
}
nrdiv*=(p+1);
sdiv*=suma_partiala(f, p);
f++;
}
if(x>1)
{
nrdiv*=2;
sdiv*=(1+x);
}
fout << nrdiv << ' ' << sdiv << '\n';
}
int suma_partiala(int f, int p)
{
int rez = 0, pow=1;
for(int i=0; i<=p; i++)
{
rez+=pow;
pow*=f;
}
return rez;
}