Pagini recente » Cod sursa (job #911315) | Cod sursa (job #2685016) | Cod sursa (job #2767215) | Cod sursa (job #294687) | Cod sursa (job #2482576)
#include <iostream>
#include <fstream>
#define mod 9973
using namespace std;
ifstream f("ssnd.in");
ofstream g("ssnd.out");
int sumofFactors(long n)
{
long rezultat= 1;
for (int i = 2; i * i <= n; i++)
{
int suma = 1;
int termen = 1;
while (n % i == 0)
{
n = n / i;
termen=(1LL*termen*i)%mod;
suma=(1LL*suma+termen)%mod;
}
rezultat=(1LL*rezultat*suma)%mod;
}
if (n >= 2)
rezultat=(1LL*rezultat*(1 + n))%mod;
return rezultat;
}
int nrdiv(long n)
{
int d=2,p=0,x=1;
while(n>1)
{
p=0;
while(n%d==0)
{
p++;
n=n/d;
}
if(p>0)
x=x*(p+1);
if(d==2)
d++;
else
d=d+2;
if(n>1 && d*d>n)
d=n;
}
return x;
}
int main()
{
long n,i,x;
f>>n;
for(i=1;i<=n;i++)
{
f>>x;
g<<nrdiv(x)<<" "<<sumofFactors(x)<<endl;
}
return 0;
}