Universal Cup Judging System

Universal Cup

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

Юкиде өлшемі $n$ болатын $S=\{s_1,\ldots,s_n\}$ мультижиыны және бүтін $k$ саны бар.

Юки түрлендіруді келесідей анықтайды:

  • $S$ жиынының $S'$ ішкі жиынын таңдап ($S'$ бос жиын болуы мүмкін), $S$ жиынынан $S'$-ті алып тастаңыз және $S'$-тің $\operatorname{mex}^{*}$ мәнін $S$ жиынына қосыңыз.

Енді Юки $S$ жиыны $\{k\}$ болатындай бірнеше түрлендіру орындағысы келеді. Сіз Юкиге $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

Ескертпе

1-ші тест жиынтығы үшін:

  • Юки 1-ші түрлендіруде $S'=\varnothing$ таңдап, $S=\{0,1\}$ ете алады, содан кейін 2-ші түрлендіруде $S'=\{0,1\}$ таңдап, $S=\{2\}$ ете алады.
  • Түрлендірулер саны бұдан аз амалдар тізбегі жоқ екенін дәлелдеуге болады, сондықтан жауап — $2$.

2-ші тест жиынтығы үшін:

  • Юкиге $S=\{4\}$ ету үшін ешқандай түрлендіру орындаудың қажеті жоқ, сондықтан жауап — $0$.

3-ші тест жиынтығы үшін:

  • Юки 1-ші түрлендіруде $S'=\varnothing$ таңдап, $S=\{0,0,2,2\}$ ете алады, 2-ші түрлендіруде $S'=\{0,2\}$ таңдап, $S=\{0,1,2\}$ ете алады, содан кейін 3-ші түрлендіруде $S'=\{0,1,2\}$ таңдап, $S=\{3\}$ ете алады.
  • Түрлендірулер саны бұдан аз амалдар тізбегі жоқ екенін дәлелдеуге болады, сондықтан жауап — $3$.

4-ші тест жиынтығы үшін:

  • Юки 1-ші түрлендіруде $S'=\{2,3\}$ таңдап, $S=\{0,0,1\}$ ете алады, содан кейін 2-ші түрлендіруде $S'=\{0,0,1\}$ таңдап, $S=\{2\}$ ете алады.
  • Түрлендірулер саны бұдан аз амалдар тізбегі жоқ екенін дәлелдеуге болады, сондықтан жауап — $2$.

5-ші тест жиынтығы үшін:

  • Юки 1-ші түрлендіруде бірден $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.