首页 > 其他分享 >20230803

20230803

时间:2023-08-03 10:12:58浏览次数:37  
标签:std int long 20230803 main MOD

数论

#include <bits/stdc++.h>

using namespace std;

const int MOD = 100003;

long long f(long long a, long long b) {
    long long x = 1, y = a;
    while (b >= 1) {
        if (b % 2 == 1) {
            x = x * y % MOD;
        }
        y = y * y % MOD;
        b /= 2;
    }
    return x;
}

int main() {
    long long n;
    long long m;
    cin >> m >> n;
    cout << (f(m, n) - (m * f(m - 1, n - 1)) % MOD + MOD) % MOD;//所有可能性数量和两两相邻两个不同的数量相减,剩下的就是相邻两个相同的数量,而相邻两个不同计算方法为:第一个有`m`种选择,第二个人和第一个人不同,所以`m-1`种选择,第三个人和第二个人不同,但可以和第一个人相同,所以也有`m-1`种选择,以此类推,除第一个人外剩下`n-1`个人都有`m-1`种选择
    return 0;
}

图论

标签:std,int,long,20230803,main,MOD
From: https://www.cnblogs.com/Eutopiax7/p/17602506.html

相关文章