Pagini recente » Cod sursa (job #191211) | Cod sursa (job #2981300) | Cod sursa (job #582793) | Cod sursa (job #1610489) | Cod sursa (job #1250242)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("sumdiv.in");
ofstream fout("sumdiv.out");
#define MOD 9901
int pow(int a, int p)
{
int rez=1;
while(p)
{
if(p&1)
rez=(a*rez)%MOD;
a=(a*a)%MOD;
p>>=1;
}
return rez;
}
int fa(int a, int b)
{
if(a%MOD==1)
{
return (b+1)%MOD;
}
return (((pow(a%MOD, b+1)-1+MOD)%MOD)*pow((a-1)%MOD, MOD-2))%MOD;
}
int main()
{
int a, b, i, c, s=1;
fin>>a>>b;
if(a==0 || b==0)
{
}
for(i=2;i*i<=a;i++)
{
if(a%i==0)
{
c=0;
while(a%i==0)
{
a/=i;
c++;
}
s=(s*fa(i, b*c))%MOD;
// cout << s<< "\n";
}
}
if(a>1)
s=(s*fa(a, b))%MOD;
fout << s << endl;
}