思路:這個題正着想不容易想,但是我們可以去想怎麼才能讓越獄不發生,也就是任何兩個相鄰的人的信仰都不相同,然後再用所有的情況減去這個情況就好了。
#include <algorithm>
#include <cmath>
#include <cstdio>
#include <cstring>
#include <iostream>
#include <list>
#include <map>
#include <queue>
#include <set>
#include <stack>
#include <string>
#include <vector>
#define MAXN 1000010
#define MAXE 5
#define INF 0x7ffffff
#define MOD 100003
#define LL long long
#define ULL unsigned long long
#define pi 3.14159
using namespace std;
LL MI(LL a, LL b) {
LL ans = 1;
while (b) {
if (b & 1) {
ans = ans * a % MOD;
}
b >>= 1;
a = a * a % MOD;
}
return ans % MOD;
}
int main() {
std::ios::sync_with_stdio(false);
LL m, n;
cin >> m >> n;
LL sum1 = MI(m, n);
LL sum2 = m;
sum2 %= MOD;
sum2 = sum2 * MI(m - 1, n - 1) % MOD;
cout << (sum1 - sum2 + MOD) % MOD << endl;
return 0;
}