Pagini recente » Cod sursa (job #3127237) | Cod sursa (job #34763) | Cod sursa (job #389523) | Cod sursa (job #2163116) | Cod sursa (job #2312774)
#include <fstream>
using namespace std;
ifstream f("ssnd.in");
ofstream g("ssnd.out");
long long n, t;
long long nr_div(int x)
{
int nr=1;
int p=0;
if(!(x&1))
{
while(!(x&1))
{
x=x>>1;
p++;
}
nr=p+1;
}
int d=3;
p=0;
while(d*d<=x)
{
if(x%d==0)
{
p=0;
while(x%d==0)
{
x/=d;
p++;
}
nr=nr*(p+1);
}
d+=2;
}
if(x>1) nr=nr<<1;
return nr;
}
long long s_div(long long x)
{
long long s=x+1;
for(int d=2; d*d<=x; d++)
{
if(x%d==0)
{
s+=d;
if(d!=x/d) s+=x/d;
}
}
return s;
}
int main()
{
f>>n;
int x;
for(int i=1; i<=n; i++)
{
f>>x;
g<<nr_div(x)<<' '<<s_div(x)<<'\n';
}
return 0;
}