結果
問題 |
No.2529 Treasure Hunter
|
ユーザー |
![]() |
提出日時 | 2023-11-03 22:47:09 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 10 ms / 2,000 ms |
コード長 | 508 bytes |
コンパイル時間 | 1,631 ms |
コンパイル使用メモリ | 191,836 KB |
最終ジャッジ日時 | 2025-02-17 18:39:12 |
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 |
other | AC * 22 |
ソースコード
#include <bits/stdc++.h> using namespace std; #define int long long signed main(){ int T; cin>>T; int mod = 998244353; while(T--){ int N,M; cin>>N>>M; int a = 1, b = 0, c = 0; for(int i=0;i<M;i++){ int aa = a+b+c; int bb = a*N+b*(N-1)+c*(N-2); int cc = a*(N*(N-3)/2%mod)+b*((N-2)*(N-3)/2%mod)+c*(N-3+((N-4)*(N-5)/2%mod)); a = max(0ll,aa), b = max(0ll,bb), c = max(0ll,cc); a %= mod; b %= mod; c %= mod; //cout<<a<<' '<<b<<' '<<c<<endl; } cout<<(a+b+c)%mod<<endl; } }