Pagini recente » Cod sursa (job #2901524) | Cod sursa (job #1059833) | Cod sursa (job #1738871) | Cod sursa (job #2897572) | Cod sursa (job #2931071)
#include <bits/stdc++.h>
using namespace std;
int lgput(int a,int b,int mod)
{
a%=mod;
int c=1;
while(b>0)
{
if(b%2==1)
c=(c*a)%mod;
a=(a*a)%mod;
b/=2;
}
return c;
}
int main()
{
ifstream cin("sumdiv.in");
ofstream cout("sumdiv.out");
int a,b;
cin>>a>>b;
int d=2,nd=1,mod=9901;
while(d*d<=a)
{int cnt=0;
while(a%d==0)
{
a=a/d;
cnt++;
}
//cnt++;
nd=nd*(lgput(d,cnt*b+1,mod)-1)*lgput(d-1,mod-2,mod);
nd=nd%mod;
d++;
}
if(a>1)
{
nd=nd*(lgput(a,b+1,mod)-1)*lgput(a-1,mod-2,mod);
nd=nd%mod;
}
cout<<nd;
return 0;
}