Pagini recente » Cod sursa (job #2152267) | Cod sursa (job #1074620) | Cod sursa (job #1667513) | Cod sursa (job #298200) | Cod sursa (job #890390)
Cod sursa(job #890390)
#include<fstream>
using namespace std;
ifstream in("ssnd.in");
ofstream out("ssnd.out");
#define R 9973
int nrdiv(int nr)
{
int p=0, div=1;
while(nr%2==0)
{
p++;
nr/=2;
}
div*=p+1;
for(int i=3;i*i<=nr;i+=2)
{
p=0;
while(nr%i==0)
{
p++;
nr/=i;
}
div*=p+1;
}
if(nr!=1)
div*=2;
return div;
}
int sumadiv(int nr)
{
long long p=1, suma=1, r=0;
for( int i=2;i<=nr;i++)
{
p=1;
while(nr%i==0)
{
p*=i;
nr/=i;
}
suma*=(p*i-1)/(i-1);
}
return suma;
}
int main()
{
long long n, i, nr;
in >> n;
for(i=1;i<=n;i++)
{
in >>nr;
out << nrdiv(nr) << " ";
out << sumadiv(nr)%R << "\n";
}
in.close();
out.close();
return 0;
}