1 条题解
-
0
此题与象棋1类似仅需把1中的2换成k即可。
#include <bits/stdc++.h> using namespace std; using i64 = long long; i64 power(i64 a, i64 n, i64 p) { i64 ans = 1; while (n) { if (n & 1) (ans *= a) %= p; (a *= a) %= p; n >>= 1; } return ans; } i64 inv(i64 x) { static const i64 mod = 998244353; return power(x, mod - 2, mod); } void solve() { static const i64 mod = 998244353; i64 a, b, k; cin >> a >> b >> k; i64 p = (a % mod) * inv(b % mod) % mod; i64 y = 2 * p - 1; i64 ans = k * inv(y % mod); cout << ans % mod << "\n"; } int main() { int T = 1; cin >> T; while (T--) solve(); return 0; }
- 1
信息
- ID
- 253
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 7
- 标签
- (无)
- 递交数
- 35
- 已通过
- 10
- 上传者