Pagini recente » Cod sursa (job #2824326) | Cod sursa (job #2590051) | Cod sursa (job #2584803) | Cod sursa (job #2325668) | Cod sursa (job #2118666)
#include <iostream>
#include <fstream>
#include <math.h>
#define prim 9901
using namespace std;
ifstream in("sumadiv.in");
ofstream out("sumadiv.out");
int a,b,aux,d,e,r=1;
int lgput(int baza,int exp)
{
int rez=1;
while(exp)
{
if(exp&1)rez*=baza;
baza*=baza;
baza%=prim;
rez%=prim;
exp>>=1;
}
return rez;
}
int main()
{
in>>a>>b;
for(d=2;d*d<=a && d>1;++d)
{
e=0;
while(a%d==0)
{
a/=d;
++e;
}
if(e!=0)
{
aux=(lgput(d,e*b+1)-1)%prim;
if(aux<0)aux+=prim;
r=r*aux;
r%=prim;
r=r*lgput(d-1,prim-2);
r%=prim;
}
}
if(a>1)
{
aux=(lgput(a,b+1)-1);
if(aux<0)aux+=prim;
r=r*aux;
r%=prim;
r=r*lgput(a-1,prim-2);
r%=prim;
}
out<<r;
return 0;
}