Cod sursa(job #3305678)
| Utilizator | Data | 3 august 2025 23:48:48 | |
|---|---|---|---|
| Problema | Suma si numarul divizorilor | Scor | 100 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.77 kb |
#include <fstream>
#define MOD 9973
using namespace std;
ifstream fin("ssnd.in");
ofstream fout("ssnd.out");
int t,nrp;
long long n,nr,s;
int main()
{
fin>>t;
for(int q=1; q<=t; q++)
{
fin>>n;
long long e,d,x;
nr=s=1;
d=2;
while(n>1)
{
e=0;
x=n;
while(n%d==0)
{
n=n/d;
e++;
}
if(e)
{
x=x/n;
nr=nr*(e+1);
s=s*(x*d-1)/(d-1);
}
d++;
if(d*d>n && n>1)
{
d=n;
}
}
fout<< nr << " " << s%MOD << "\n";
}
return 0;
}
