Pagini recente » Cod sursa (job #178069) | Cod sursa (job #1258791) | Cod sursa (job #1037064) | Cod sursa (job #784295) | Cod sursa (job #2451391)
//
// main.cpp
// pairs
//
// Created by Andu Andu on 26/08/2019.
// Copyright © 2019 Andu Andu. All rights reserved.
//
#include <iostream>
#include <fstream>
#define MOD 9901
#define ll long long
using namespace std;
ifstream f ("sumdiv.in");
ofstream g ("sumdiv.out");
long long n;
long long i, j, k, x, d;
long long SOL = 1, ciur[1000001], s, e, aux, r=1;
bool isOK[1000001], epp[1000001];
long long maxx = 0;
long long lgput(long long baza,long long exp)
{
baza%=MOD;
long long rez=1;
while(exp)
{
if(exp&1)rez*=baza;
baza*=baza;
baza%=MOD;
rez%=MOD;
exp>>=1;
}
return rez;
}
int a,b;
int main() {
f>>a>>b;
for(d=2;d*d<=a && a>1;++d) {
e=0;
while(a%d==0)
{
a/=d;
++e;
}
if(e!=0 && d%MOD!=0)
{
if(d%MOD==1)r=r*(e*b+1);
else
{
aux=(lgput(d,e*b+1)-1)%MOD;
if(aux<0)aux+=MOD;
r=r*aux;
r%=MOD;
r=r*lgput(d-1,MOD-2);
r%=MOD;
}
}
}
if(a>1 and a%MOD!=0) {
if(a%MOD==1)
r=(r*(b+1))%MOD;
else
{
aux=(lgput(a,b+1)-1);
if(aux<0)aux+=MOD;
r=r*aux;
r%=MOD;
r=r*lgput(a-1,MOD-2);
r%=MOD;
}
}
g<<r;
return 0;
}