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$