Pagini recente » Cod sursa (job #238715) | Cod sursa (job #1206538) | Cod sursa (job #1191280) | Cod sursa (job #3190537) | Cod sursa (job #2435555)
#include <fstream>
#define MOD 9901
#define ll unsigned long long
using namespace std;
ifstream in("sumdiv.in");
ofstream out("sumdiv.out");
ll a, b, d, p = 1;
int power(int N, int P){
int r = 1;
while (P){
if (P % 2 == 1)
r = (1LL * r * N) % MOD;
N = (1LL * N * N) % MOD;
P = P / 2;
}
return r;
}
int main() {
ios_base::sync_with_stdio(false);
in.tie(NULL), out.tie(NULL);
in >> a >> b;
ll nr = 0;
while (a % 2 == 0)a /= 2,nr++;
p = ((power(2, b * nr + 1) - 1) / (2 - 1)) % MOD;
for (int i = 3; i <= sqrt(a); i += 2) {
nr = 0;
if (a % i == 0) {
while (a % i == 0)a /= i, nr++;
p *= ((power(i, b * nr + 1) - 1) / (i - 1)) % MOD;
}
}
if (a > 2) p *= ((power(a, b + 1) - 1) / (a - 1)) % MOD;;
out << p;
}