Universal Cup Judging System

Universal Cup

Time Limit: 1 s Memory Limit: 512 MB Total points: 100 Hackable ✓
Statistics

Yuki memiliki sebuah multihimpunan $S=\{s_1,\ldots,s_n\}$ berukuran $n$ dan sebuah bilangan bulat $k$.

Yuki mendefinisikan transformasi sebagai berikut:

  • Pilih subhimpunan $S'$ dari $S$ (dengan $S'$ boleh berupa himpunan kosong), hapus $S'$ dari $S$, dan tambahkan $\operatorname{mex}^{*}$ dari $S'$ ke $S$.

Kini Yuki ingin melakukan beberapa transformasi agar $S$ menjadi $\{k\}$. Bantulah Yuki mencari jumlah transformasi minimum yang diperlukan agar $S$ sama dengan $\{k\}$. Karena jawabannya bisa sangat besar, Anda hanya perlu mengeluarkan jawaban modulo $998244353$.

Dapat dibuktikan bahwa selalu ada setidaknya satu urutan operasi yang dapat mengubah $S$ menjadi $\{k\}$.

$*$: Mex dari multihimpunan adalah bilangan bulat nonnegatif terkecil yang tidak muncul di multihimpunan tersebut. Sebagai contoh, $\operatorname{mex}\{0,1,2\}=3$, $\operatorname{mex}\{1,0,3,1\}=2$, dan $\operatorname{mex}\varnothing=0$.

Masukan

Soal ini memiliki beberapa kasus uji.

Baris pertama berisi sebuah bilangan bulat positif $t$ ($1 \le t \le 10^5$), yang menyatakan jumlah kasus uji.

Untuk setiap kasus uji:

  • Baris pertama berisi dua bilangan bulat $n,k$ ($1 \le n \le 5 \cdot 10^5$, $0 \le k \le 10^9$).
  • Baris kedua berisi $n$ bilangan bulat $s_1,\ldots,s_n$ ($0 \le s_i \le 10^9$).

Dijamin bahwa jumlah $n$ untuk seluruh kasus uji tidak melebihi $5 \cdot 10^5$.

Keluaran

Untuk setiap kasus uji, keluarkan satu baris berisi sebuah bilangan bulat yang menyatakan jumlah transformasi minimum yang diperlukan agar $S$ sama dengan $\{k\}$, modulo $998244353$.

Contoh

Masukan 1

6
1 2
1
1 4
4
3 3
0 2 2
4 2
1 0 3 2
4 3
2 1 0 2
3 52
20 2 6

Keluaran 1

2
0
3
2
1
262875292

Catatan

Untuk kasus uji pertama:

  • Yuki dapat memilih $S'=\varnothing$ pada transformasi pertama, menghasilkan $S=\{0,1\}$, lalu memilih $S'=\{0,1\}$ pada transformasi kedua, menghasilkan $S=\{2\}$.
  • Dapat dibuktikan bahwa tidak ada urutan operasi dengan jumlah transformasi yang lebih sedikit, sehingga jawabannya adalah $2$.

Untuk kasus uji kedua:

  • Yuki tidak perlu melakukan transformasi apa pun untuk mendapatkan $S=\{4\}$, sehingga jawabannya adalah $0$.

Untuk kasus uji ketiga:

  • Yuki dapat memilih $S'=\varnothing$ pada transformasi pertama, menghasilkan $S=\{0,0,2,2\}$, memilih $S'=\{0,2\}$ pada transformasi kedua, menghasilkan $S=\{0,1,2\}$, lalu memilih $S'=\{0,1,2\}$ pada transformasi ketiga, menghasilkan $S=\{3\}$.
  • Dapat dibuktikan bahwa tidak ada urutan operasi dengan jumlah transformasi yang lebih sedikit, sehingga jawabannya adalah $3$.

Untuk kasus uji keempat:

  • Yuki dapat memilih $S'=\{2,3\}$ pada transformasi pertama, menghasilkan $S=\{0,0,1\}$, lalu memilih $S'=\{0,0,1\}$ pada transformasi kedua, menghasilkan $S=\{2\}$.
  • Dapat dibuktikan bahwa tidak ada urutan operasi dengan jumlah transformasi yang lebih sedikit, sehingga jawabannya adalah $2$.

Untuk kasus uji kelima:

  • Yuki dapat langsung memilih $S'=\{0,1,2,2\}$ pada transformasi pertama, menghasilkan $S=\{3\}$.
  • Dapat dibuktikan bahwa tidak ada urutan operasi dengan jumlah transformasi yang lebih sedikit, sehingga jawabannya adalah $1$.

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.