問題一覧 >
通常問題
No.2310 [Cherry 5th Tune A] Against Regret
レベル :
/ 実行時間制限 : 1ケース 6.000秒 / メモリ制限
: 512 MB / 標準ジャッジ問題
タグ :
/
解いたユーザー数 29
作問者 : 👑
Kazun
/ テスター :
👑
AngrySadEight
問題文最終更新日: 2023-05-26 23:59:54
問題文
(N+1) 頂点の有向グラフ D がある. D における (N+1) 個の頂点は頂点 0,1,2,…,N と名付けられている.
0≤u≤N,0≤v≤N に対して, 頂点 u から頂点 v を結ぶ有向辺が Xu,v 本ある. ここで, u≥v ならば, Xu,v=0 である.
この D について, 以下の Q 個の質問, 質問 1, ⋯, 質問 Q に答えよ.
- 質問 q : D に対して, 以下の操作を k=1,2,…,Kq の順に行って得られる有向グラフを D′ とする.
- 頂点 Aq,k から頂点 Bq,k へ結ぶ有向辺を Cq,k 本追加する. ここで, Aq,k<Bq,k である.
このとき, D′ において, 頂点 0 から頂点 N へのパスの数を 998244353 で割った余りを求めよ. なお, 条件を満たすパスの数は有限であることが証明できる.
ただし, たどった頂点が同じでも, 辺が異なっている部分があればそれらは異なるパスとする.
なお, 各質問は独立した問題とせよ. つまり, 質問 q で追加された有向辺が別の質問における D に追加されることはない.
制約
- 1≤N≤400.
- 0≤Xu,v≤998244353(0≤u≤N,0≤v≤N).
- u≥v⇒Xu,v=0(0≤u≤N,0≤v≤N).
- 1≤Q≤3×104.
- 1≤Kq≤30(1≤q≤Q).
- 0≤Aq,k<Bq,k≤N(1≤q≤Q,1≤k≤Kq).
- 1≤Cq,k≤998244353(1≤q≤Q,1≤k≤Kq).
- 入力は全て整数である.
入力
入力は以下の形式で標準入力から与えられる.
N
X0,0 X0,1 ⋯ X0,N
X1,0 X1,1 ⋯ X1,N
⋮
XN,0 XN,1 ⋯ XN,N
Q
Question1
Question2
⋮
QuestionQ
ここで,
Questionq では質問
q に対する入力であり, 以下の形式で与えられる.
Kq
Aq,1 Bq,1 Cq,1
Aq,2 Bq,2 Cq,2
⋮
Aq,Kq Bq,Kq Cq,Kq
出力
出力は Q 行からなる. 第 q (1≤q≤Q) 行には質問 q に対する解答を整数で出力せよ.
最後に改行を忘れないこと.
また, この問題では入力が大量になる場合があるので, 高速な入力を利用することをおすすめする.
サンプル
サンプル1
入力
4
0 1 0 0 0
0 0 1 0 0
0 0 0 1 0
0 0 0 0 1
0 0 0 0 0
1
2
0 4 1
1 4 2
出力
4
D′ における頂点 0 から頂点 4 へのパスは以下である.
- 頂点 0 → 頂点 1 → 頂点 2 → 頂点 3 → 頂点 4
- 頂点 0 → 頂点 4
- 頂点 0 → 頂点 1 → 頂点 4 (2 個)
よって, 合計
4 個である.
サンプル2
入力
2
0 0 0
0 0 0
0 0 0
2
1
0 1 100
3
0 1 100
1 2 100
0 1 100
出力
0
20000
頂点 0 から頂点 N へ到達不可能な可能性がある. また, 有向辺を追加する際, 同じ頂点間に複数回有向辺を追加する可能性もある.
サンプル3
入力
6
0 314159265 358979323 846264338 327950288 41971693 993751058
0 0 271828182 845904523 536028747 135266249 775724709
0 0 0 161803398 874989484 820458683 436563811
0 0 0 0 141421356 237309504 880168872
0 0 0 0 0 207879576 350761908
0 0 0 0 0 0 123456789
0 0 0 0 0 0 0
1
4
1 4 46
3 5 4646
2 5 464646
3 4 46464646
出力
368653717
提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。