Pagini recente » Cod sursa (job #527326) | Istoria paginii preoni-2007/runda-finala/poze/premiere | Istoria paginii runda/eusebiu_oji_2009_cls9/clasament | Cod sursa (job #2450907) | Cod sursa (job #3302386)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin ("ssnd.in");
ofstream fout ("ssnd.out");
int t;
int main()
{
fin>>t;
int i;
long long n,suma=1,nrd=1,x,k;
for(i=1;i<=t;i++)
{
suma=1;
nrd=1;
fin>>n;
if(n%2==0)
{
k=1;
x=2;
while(n%2==0)
{
n/=2;
k++;
x*=2;
}
x--;
suma*=x;
nrd*=k;
}
for(i=3;i*i<=n;i+=2)
{
if(n%i==0)
{
k=1;
x=i;
while(n%i==0)
{
n/=i;
k++;
x*=i;
}
x--;
x/=(i-1);
suma*=x;
nrd*=k;
}
}
if(n>1)
{
k=2;
x=(n*n-1)/(n-1);
suma*=x;
nrd*=k;
}
fout<<nrd<<" "<<suma<<'\n';
}
return 0;
}