問題一覧 > 通常問題

No.3565 Take from Excluded

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 1024 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 14
作問者 : 👑 to-omer / テスター : 👑 hamamu
ProblemId : 9890 / yukicoder contest 501 (順位表) / 自分の提出
問題文最終更新日: 2026-03-21 00:04:32
yukicoder contest 501の他の問題:

問題文

長さ $N$ の整数列 $A=(A_1,A_2,\dots,A_N)$ が与えられます。
以下のクエリを順に $Q$ 個処理してください。 $i$ 番目のクエリでは $K_i,X_i,M_i$ が与えられるので、以下の操作を $K_i$ 回行った後に $A_{X_i}$ を $998244353$ で割った余りを出力してください。

  • $A$ の要素の最小値を $x$ として、 $A$ に含まれない $x$ 以上の整数のうち小さい方から $M_i$ 個を順に並べた数列を新たに $A$ とする。

クエリで変更されたものは次のクエリに引き継がれることに注意してください。

制約

  • 入力は全て整数
  • $1\le N\le 3000$
  • $1\le Q\le 3000$
  • $1\le A_i\le 10^9\quad(1\le i\le N)$
  • $1\le K_i\le 10^9\quad(1\le i\le Q)$
  • $1\le X_i\le M_i\le 10^9\quad(1\le i\le Q)$

この問題にはより高難易度の制約である evil ケースが用意されており、その制約は以下の通りです。

  • 入力は全て整数
  • $1\le N\le 10^5$
  • $1\le Q\le 10^5$
  • $1\le A_i\le 10^9\quad(1\le i\le N)$
  • $1\le K_i\le 10^9\quad(1\le i\le Q)$
  • $1\le X_i\le M_i\le 10^9\quad(1\le i\le Q)$

evil ケースのジャッジは行われますが、最終的な判定には影響されません。余力があれば挑戦してみてください。

入力

$N$ $Q$
$A_1$ $A_2$ $\dots$ $A_N$
$K_1$ $X_1$ $M_1$
$K_2$ $X_2$ $M_2$
$\vdots$
$K_Q$ $X_Q$ $M_Q$

出力

$Q$ 行出力してください。 $i$ 行目には $i$ 番目のクエリの結果を出力してください。

サンプル

サンプル1
入力
4 3
1 2 4 6
1 1 4
1 1 4
3 5 5
出力
3
4
15

$A=(1,2,4,6)$ です。

  • $1$ 番目のクエリの操作後には $A=(3,5,7,8)$ となります。
  • $2$ 番目のクエリの操作後には $A=(4,6,9,10)$ となります。
  • $3$ 番目のクエリの操作後には $A=(7,8,11,12,15)$ となります。
サンプル2
入力
10 10
72494724 256674714 313253426 599214029 902475449 996684696 34537839 225932543 731286711 851529395
618714061 21048135 53392932
778865009 406678109 416530079
477052802 147454770 351371372
671921386 80856595 551118804
333685095 152683213 820558853
744767085 204695052 257535314
833792916 325319475 758974079
829827121 250824565 424363265
966042025 20697527 326806538
689910103 44003903 519864118
出力
784341550
857264411
307360820
109013452
816875714
571870008
872854725
757551548
492602093
445025261

$998244353$ で割った余りを出力することに注意してください。

提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。