菜鸡刷题记录
[题号:题解]
1008:简单排列组合
1 #include <bits/stdc++.h> 2 using namespace std; 3 4 #define ll long long 5 const ll MOD = (ll)1e5 + 3; 6 ll n, m; 7 8 ll qmod(ll base, ll n) 9 { 10 ll res = 1; 11 while (n) 12 { 13 if (n & 1) res = res * base % MOD; 14 base = base * base % MOD; 15 n >>= 1; 16 } 17 return res; 18 } 19 20 int main() 21 { 22 while (scanf("%lld%lld", &m, &n) != EOF) 23 printf("%lld\n", (qmod(m, n) - (m % MOD * qmod(m - 1, n - 1) % MOD) + MOD) % MOD); 24 return 0; 25 }