题解
2026-05-16 08:27:00
发布于:福建
1阅读
0回复
0点赞
思路在代码里
#include <bits/stdc++.h>
using namespace std;
// 快速幂函数:计算 (n^k) % p
int pmp(int n, int k, int p) {
if(k == 1) return n % p; // 指数为1时直接返回
int ha = pmp(n, k / 2, p); // 递归计算一半的幂
if(k % 2) return n % p * ha % p * ha % p; // k为奇数:n * ha^2
return ha * ha % p; // k为偶数:ha^2
}
int main() {
long long n, m, k, x; // 定义输入变量
cin >> n >> m >> k >> x; // 读取四个整数
long long po = pmp(10, k, n); // 计算 10^k mod n
long long yu = (m * po) % n; // 计算总移动步数 mod n
long long ans = (x + yu) % n; // 计算最终位置
cout << ans; // 输出结果
return 0;
}
这里空空如也







有帮助,赞一个