Pagini recente » Cod sursa (job #715261) | Cod sursa (job #569796) | Cod sursa (job #3244747) | Cod sursa (job #2603558) | Cod sursa (job #252925)
Cod sursa(job #252925)
#include <stdio.h>
#define NR 9901
long long a,b,suma=1;
void citire()
{
scanf("%lld%lld",&a,&b);
}
int power(long long n,long long p)
{
long long s=1;
n=n%NR;
while(p)
{
if (p%2)
s=s*n%NR;
n=n*n%NR;
p/=2;
}
return s;
}
void rezolvare()
{
long long i,exp;
for (i=2; i*i<=a; i++)
{
if (a%i==0)
{
exp=0;
while (a%i==0)
{
a/=i;
exp++;
}
suma*=(power(i,exp*b+1)-1)/(i-1)%NR;
}
}
if (a!=1)
suma*=(power(a,b+1)-1)/(a-1);
}
int main()
{
freopen("sumdiv.in","r",stdin);
freopen("sumdiv.out","w",stdout);
citire();
rezolvare();
printf("%lld",suma%NR);
return 0;
}