Universal Cup Judging System

Universal Cup

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

ל־Yuki יש רב־קבוצה $S=\{s_1,\ldots,s_n\}$ בגודל $n$ ומספר שלם $k$.

Yuki מגדיר המרה באופן הבא:

  • בוחרים תת־קבוצה $S'$ של $S$ (כאשר $S'$ יכולה להיות ריקה), מסירים את $S'$ מ־$S$ ומוסיפים את ה־$\operatorname{mex}^{*}$ של $S'$ ל־$S$.

כעת Yuki רוצה לבצע כמה המרות כך ש־$S$ תהפוך ל־$\{k\}$. עליכם לעזור ל־Yuki למצוא את מספר ההמרות המינימלי הדרוש כדי ש־$S$ תהיה שווה ל־$\{k\}$. מכיוון שהתשובה עשויה להיות גדולה מאוד, עליכם להדפיס רק את התשובה מודולו $998244353$.

ניתן להוכיח שתמיד קיים לפחות רצף פעולות אחד שיכול להפוך את $S$ ל־$\{k\}$.

$*$: ה־mex של רב־קבוצה הוא המספר השלם האי־שלילי הקטן ביותר שאינו מופיע בה. למשל, $\operatorname{mex}\{0,1,2\}=3$, $\operatorname{mex}\{1,0,3,1\}=2$ ו־$\operatorname{mex}\varnothing=0$.

קלט

בעיה זו מכילה כמה מקרי בדיקה.

השורה הראשונה מכילה מספר שלם חיובי $t$ ($1 \le t \le 10^5$), המייצג את מספר מקרי הבדיקה.

לכל מקרה בדיקה:

  • השורה הראשונה מכילה שני מספרים שלמים $n,k$ ($1 \le n \le 5 \cdot 10^5$, $0 \le k \le 10^9$).
  • השורה השנייה מכילה $n$ מספרים שלמים $s_1,\ldots,s_n$ ($0 \le s_i \le 10^9$).

מובטח שסכום ערכי $n$ בכל מקרי הבדיקה אינו עולה על $5 \cdot 10^5$.

פלט

לכל מקרה בדיקה, הדפיסו שורה אחת המכילה מספר שלם המייצג את מספר ההמרות המינימלי הדרוש כדי ש־$S$ תהיה שווה ל־$\{k\}$, מודולו $998244353$.

דוגמאות

קלט 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

פלט 1

2
0
3
2
1
262875292

הערה

למקרה הבדיקה הראשון:

  • Yuki יכול לבחור $S'=\varnothing$ בהמרה הראשונה, וכך לקבל $S=\{0,1\}$, ואז לבחור $S'=\{0,1\}$ בהמרה השנייה, וכך לקבל $S=\{2\}$.
  • ניתן להוכיח שלא קיים רצף פעולות עם פחות המרות, ולכן התשובה היא $2$.

למקרה הבדיקה השני:

  • Yuki אינו צריך לבצע המרות כדי לקבל $S=\{4\}$, ולכן התשובה היא $0$.

למקרה הבדיקה השלישי:

  • Yuki יכול לבחור $S'=\varnothing$ בהמרה הראשונה, וכך לקבל $S=\{0,0,2,2\}$, לבחור $S'=\{0,2\}$ בהמרה השנייה, וכך לקבל $S=\{0,1,2\}$, ואז לבחור $S'=\{0,1,2\}$ בהמרה השלישית, וכך לקבל $S=\{3\}$.
  • ניתן להוכיח שלא קיים רצף פעולות עם פחות המרות, ולכן התשובה היא $3$.

למקרה הבדיקה הרביעי:

  • Yuki יכול לבחור $S'=\{2,3\}$ בהמרה הראשונה, וכך לקבל $S=\{0,0,1\}$, ואז לבחור $S'=\{0,0,1\}$ בהמרה השנייה, וכך לקבל $S=\{2\}$.
  • ניתן להוכיח שלא קיים רצף פעולות עם פחות המרות, ולכן התשובה היא $2$.

למקרה הבדיקה החמישי:

  • Yuki יכול לבחור ישירות $S'=\{0,1,2,2\}$ בהמרה הראשונה, וכך לקבל $S=\{3\}$.
  • ניתן להוכיח שלא קיים רצף פעולות עם פחות המרות, ולכן התשובה היא $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.