怀疑数据范围有误
查看原帖
怀疑数据范围有误
1122193
FarmerDrone楼主2024/6/10 18:35

想不出正解写的打表,结果3个点“引用无效内存”RE了,怀疑k比8大

#include <bits/stdc++.h>
using namespace std;

const int mod = 1e9+7;
int ans[10] = {0, 1, 2, 9, 64, 625, 7776, 117649, 2097152};

int main()
{
	int n, k;
	cin >> n >> k;
	long long p = 1;
	long long r = n - k, m = n - k;
	while (m)
	{
		if (m & 1)
			p *= r, p %= mod;
		r *= r;
		r %= mod;
		m >>= 1;
	}
	cout << p * ans[k] % mod << endl;
	return 0;
}
2024/6/10 18:35
加载中...