Pagini recente » Cod sursa (job #1556826) | Cod sursa (job #1513692) | Cod sursa (job #103051) | Cod sursa (job #2767010) | Cod sursa (job #757141)
Cod sursa(job #757141)
#include<fstream>
#include<cmath>
using namespace std;
ifstream f("sumdiv.in");
ofstream g("sumdiv.out");
long long s=1,i,b,a,a1,a2,e;
long long putere(long long n,long long p)
{long long x=1,q,nr;
q=p;
nr=n;
while(p)
{if(p&1)
x=(x*nr)%9901;
nr=(nr*nr)%9901;
p/=2;
}
p=q;
return x;
}
int main()
{f>>a>>b;
for(i=2;i*i<=a;++i)
if(a%i==0)
{e=0;
while(a%i==0)
{++e;
a=a/i;
}
e=e*b;
if(i%9901==1)
s=s*(e+1)%9901;
else
{a1=(putere(i,e+1)+9900)%9901;
a2=(putere(i-1,9901-2))%9901;
s=((((s)%9901)*a1)%9901*a2)%9901;
}
}
if(a!=1)
{if(a%9901==1)
s=(s*(b%9901+1))%9901;
else
{a1=(putere(a,b%9901+1)+9900)%9901;
a2=(putere(a-1,9899))%9901;
s=((((s)%9901)*a1)%9901*a2)%9901;
}}
g<<s<<'\n';
return 0;
}