Pagini recente » Cod sursa (job #2908948) | Cod sursa (job #2428527) | Cod sursa (job #2800935) | Cod sursa (job #2288082) | Cod sursa (job #2428539)
#include<fstream>
using namespace std;
ifstream f("ssnd.in");
ofstream g("ssnd.out");
long long n[11],i,nr,l,p,nn,suma,put,j;
long long k,maxim;
bool fol[1000001];
void ciur()
{
long long i,j;
for(i=1; i*i<=maxim; i++)
fol[i]=1;
for(i=2; i*i<=maxim; i++)
if(fol[i])
for(j=i+i; j*i<=maxim; j+=i)
fol[j]=0;
}
int main()
{
f>>nn;
for(i=1; i<=nn; i++)
{
f>>n[i];
if(maxim<n[i])
maxim=n[i];
}
ciur();
for(l=1; l<=nn; l++)
{
nr=1;
p=0;
suma=1;
for(i=2; i*i<=n[l]; i++)
{
p=0;
if(n[l]%i==0 && fol[i]==1)
{
while(n[l]%i==0)
{
n[l]=n[l]/i;
p++;
}
nr=nr*(p+1);
put=1;
for(j=1; j<=p+1; j++)
put=put*i;
suma=suma*((put-1)/(i-1));
}
}
g<<nr<<' '<<suma<<'\n';
}
return 0;
}