結果
問題 | No.1206 OR, OR, OR...... |
ユーザー |
![]() |
提出日時 | 2020-08-30 13:03:42 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 4 ms / 2,000 ms |
コード長 | 577 bytes |
コンパイル時間 | 2,622 ms |
コンパイル使用メモリ | 191,836 KB |
最終ジャッジ日時 | 2025-01-13 20:50:05 |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 |
other | AC * 8 |
ソースコード
#include <bits/stdc++.h>using namespace std;const long long MOD = 998244353;long long modsub(long long a, long long b){return (a % MOD - b % MOD + MOD) % MOD;}long long modpow(long long a, long long b){long long ans = 1;while (b > 0){if (b % 2 == 1){ans *= a;ans %= MOD;}a *= a;a %= MOD;b /= 2;}return ans;}int main(){int T;cin >> T;for (int i = 0; i < T; i++){int N, K;cin >> N >> K;//N*(2^NK-2^(N-1)K)cout << N * modsub(modpow(2, (long long) N * K), modpow(2, (long long) (N - 1) * K)) % MOD << endl;}}