Pagini recente » Cod sursa (job #2110803) | Cod sursa (job #1227392) | Cod sursa (job #895579) | Cod sursa (job #2468601) | Cod sursa (job #2175721)
#include <iostream>
#include <fstream>
#include <math.h>
using namespace std;
ifstream fin("ssnd.in");
ofstream fout("ssnd.out");
void nr_divizori(long long y)
{
int d=2,e=0,nrdiv=1;
long long t=1;
while(y!=1)
{
int f=1;
e=0;
while(y % d==0)
{
++e;
y/=d;
f=f*d;
++f;
}
++d;
t*=f;
if(e) nrdiv=nrdiv * ( e + 1);
if(y > 1 && d * d > y )d = y;
}
fout<<nrdiv<<" "<<t%9973<<"\n";
}
int i,t;
/*
int suma_divizori(long long y)
{
long long s=1+y;
for(i= 2; i<= sqrt(y); i++)
{
if(y % i== 0)
{
if(i * i == y )
s=s + i;
else s=s+ i+ y/i;
}
}
return (s%9973);
}*/
long long x;
int main()
{
fin>>t;
while(t--)
{
fin>>x;
nr_divizori(x);
}
return 0;
}