Pagini recente » Cod sursa (job #2134715) | Cod sursa (job #537042) | simularea-care-a-spart-globul-pamantesc | Cod sursa (job #1791328) | Cod sursa (job #1644926)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("ssnd.in");
ofstream g("ssnd.out");
bool a[1000005];
int v[1000005];
int main()
{int i,j,k=0,n,x,d,nr,s,num;
a[1]=1;
for(i=2;i<=1000000;i++)
if(a[i]==0)
for(j=i+i;j<=1000000;j=j+i)
a[j]=1;
for(i=2;i<=1000000;i++)
if(a[i]==0) v[++k]=i;
f>>n;
for(j=1;j<=n;j++)
{
nr=1;
s=1;
f>>x;
for(i=1;i<=x;i++)
{num=0;
if(x%v[i]==0) num++;
int c=x;
while(c%v[i]==0)
{
num++;
c=c/v[i];
}
if(num!=0)
nr=nr*num;
int r=1;
for(d=1;d<=num;d++)
r=r*v[i];
if(r-1!=0)
s=s*(r-1)/(v[i]-1);
}
g<<nr<<' '<<s<<'\n';
}
return 0;
}