Pagini recente » Cod sursa (job #2943672) | Cod sursa (job #2968749) | Cod sursa (job #1173833) | Cod sursa (job #2890258) | Cod sursa (job #2942542)
//ssnd
#include <bits/stdc++.h>
using namespace std;
ifstream fin ("ssnd.in");
ofstream fout ("ssnd.out");
int v[1000010];
int main()
{
int i,j;
bitset <1000010> bit;
//1 compus 0 prim
bit[0]=bit[1]=1;
for(i=2;i<=1000000;i++)
{
if(i==0)
{
for(j=i*i;j<=1000000;j=j+i)
{
bit[j]=1;
}
}
}
j=1;
v[j]=2;
j++;
for(i=3;i<=1000000;i=i+2)
{
if(bit[i]==0)
{
v[j]=i;
j++;
}
}
//cout<<v[1]<<" "<<v[2]<<" ";
int t,e,d;
long long n,sd=0,nd=1;
fin>>t;
for(i=1;i<=t;i++)
{
fin>>n;
sd=1;
nd=1;
//cout<<n<<"\n";
for(j=1;v[j]<=n;j++)
{
d=v[j];
e=0;
while(n%d==0)
{
e++;
n=n/d;
}
sd=sd*((pow(d,e+1)-1)/(d-1));
nd=nd*(e+1);
//cout<<d<<" "<<e<<" "<<j<<"\n";
//cout<<((pow(d,e+1)-1)/(d-1))<<"\n";
}
fout<<nd<<" "<<sd<<"\n";
}
return 0;
}