มีเกาะ N เกาะและสะพานทวิภาคี M แห่งเชื่อมระหว่างเกาะสองเกาะ เกาะและสะพานมีหมายเลข 1, 2, \ldots, N และ 1, 2, \ldots, M ตามลำดับ
สะพาน i เชื่อมต่อเกาะ U_i และ V_i และเวลาที่ใช้ในการข้ามไปในทิศทางใดทิศทางหนึ่งคือ T_i
ไม่มีสะพานใดที่เชื่อมต่อเกาะกับตัวมันเอง แต่เกาะสองเกาะสามารถเชื่อมต่อโดยตรงด้วยสะพานมากกว่าหนึ่งแห่งได้
เราสามารถเดินทางระหว่างเกาะสองเกาะใดๆ โดยใช้สะพานบางแห่ง
คุณได้รับคำถาม Q ข้อ ดังนั้นให้ตอบคำถามแต่ละข้อ คำถามที่ i มีดังต่อไปนี้:

คุณได้รับสะพานที่แตกต่างกัน K_i แห่ง: สะพาน B_{i,1}, B_{i,2}, \ldots, B_{i,K_i}
หาเวลาขั้นต่ำที่จำเป็นในการเดินทางจากเกาะ 1 ไปยังเกาะ N โดยใช้สะพานแต่ละแห่งอย่างน้อยหนึ่งครั้ง
พิจารณาเฉพาะเวลาที่ใช้ในการข้ามสะพานเท่านั้น คุณสามารถข้ามสะพานที่กำหนดในลำดับใดก็ได้และในทิศทางใดก็ได้

อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N M
U_1 V_1 T_1
U_2 V_2 T_2
\vdots
U_M V_M T_M
Q
K_1
B_{1,1} B_{1,2} \cdots B_{1,{K_1}}
K_2
B_{2,1} B_{2,2} \cdots B_{2,{K_2}}
\vdots
K_Q
B_{Q,1} B_{Q,2} \cdots B_{Q,{K_Q}}

เอาต์พุต

พิมพ์ Q บรรทัด บรรทัดที่ i (1 \leq i \leq Q) ควรมีคำตอบสำหรับคำถามที่ i เป็นจำนวนเต็ม
ข้อจำกัด

- 2 \leq N \leq 400
- N-1 \leq M \leq 2 \times 10^5
- 1 \leq U_i < V_i \leq N
- 1 \leq T_i \leq 10^9
- 1 \leq Q \leq 3000
- 1 \leq K_i \leq 5
- 1 \leq B_{i,1} < B_{i,2} < \cdots < B_{i,K_i} \leq M
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม
- สามารถเดินทางระหว่างเกาะสองเกาะได้โดยใช้สะพานบางแห่ง
ตัวอย่างอินพุต 1

3 5
1 2 10
1 3 20
1 3 30
2 3 15
2 3 25
2
1
1
2
3 5

ตัวอย่างเอาต์พุต 1

25
70

สำหรับแบบสอบถามแรก เราจำเป็นต้องค้นหาเวลาขั้นต่ำในการเดินทางจากเกาะ 1 ไปยังเกาะ 3 โดยใช้สะพาน 1
เวลาขั้นต่ำจะสำเร็จได้โดยใช้สะพาน 1 เพื่อเคลื่อนที่จากเกาะ 1 ไปยังเกาะ 2 จากนั้นใช้สะพาน 4 เพื่อเคลื่อนที่จากเกาะ 2 ไปยังเกาะ 3 เวลาที่ใช้คือ 10 + 15 = 25
ดังนั้น ให้พิมพ์ 25 บนบรรทัดแรก สำหรับแบบสอบถามที่สอง เราจำเป็นต้องค้นหาเวลาขั้นต่ำในการเดินทางจากเกาะ 1 ไปยังเกาะ 3 โดยใช้สะพานทั้ง 3 และ 5
เวลาขั้นต่ำจะสำเร็จได้โดยใช้สะพาน 3 เพื่อย้ายจากเกาะ 1 ไปยังเกาะ 3 จากนั้นใช้สะพาน 5 เพื่อย้ายไปยังเกาะ 2 และสุดท้ายใช้สะพาน 4 เพื่อกลับไปยังเกาะ 3 เวลาที่ใช้คือ 30 + 25 + 15 = 70
ดังนั้น ให้พิมพ์ 70 บนบรรทัดที่สอง

ตัวอย่างอินพุต 2

6 6
1 5 1
2 5 1
2 4 1
3 4 1
3 6 1
1 6 1
2
5
1 2 3 4 5
1
5

ตัวอย่างเอาต์พุต 2

5
3

สำหรับแบบสอบถามแต่ละรายการ คุณสามารถข้ามสะพานที่ระบุได้ทั้งสองทิศทาง
ตัวอย่างอินพุต 3

5 5
1 2 1000000000
2 3 1000000000
3 4 1000000000
4 5 1000000000
1 5 1000000000
1
1
3

ตัวอย่างเอาต์พุต 3

4000000000

ระวังว่าคำตอบอาจไม่พอดีกับจำนวนเต็ม 32 บิต

มีเกาะ N เกาะและสะพานสองทาง M สะพานที่เชื่อมเกาะสองเกาะเข้าด้วยกัน โดยที่เกาะและสะพานมีหมายเลข 1, 2, \ldots, N และ 1, 2, \ldots, M ตามลำดับ
สะพานที่ i เชื่อมเกาะ U_i และ V_i และใช้เวลาข้ามไปในทิศทางใดก็ได้คือ T_i
ไม่มีสะพานใดที่เชื่อมเกาะกับตัวเอง แต่เป็นไปได้ที่เกาะสองเกาะจะเชื่อมโดยตรงด้วยสะพานมากกว่าหนึ่งสะพาน
สามารถเดินทางระหว่างเกาะสองเกาะใดๆ โดยใช้สะพานบางแห่ง
คุณได้รับ Q คำถาม ให้ตอบคำถามแต่ละข้อ คำถามที่ i-th มีดังนี้:

คุณได้รับสะพาน K_i ที่แตกต่างกัน: สะพาน B_{i,1}, B_{i,2}, \ldots, B_{i,K_i}
ค้นหาใช้เวลาน่อบที่สุดในการเดินทางจากเกาะ 1 ไปยังเกาะ N โดยใช้สะพานเหล่านี้แต่ละสะพานอย่างน้อยหนึ่งครั้ง
พิจารณาเฉพาะเวลาที่ใช้ข้ามสะพานเท่านั้น
คุณสามารถข้ามสะพานที่ให้มาในลำดับและทิศทางใดก็ได้

Input

ข้อมูลถูกให้มาจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N M
U_1 V_1 T_1
U_2 V_2 T_2
\vdots
U_M V_M T_M
Q
K_1
B_{1,1} B_{1,2} \cdots B_{1,{K_1}}
K_2
B_{2,1} B_{2,2} \cdots B_{2,{K_2}}
\vdots
K_Q
B_{Q,1} B_{Q,2} \cdots B_{Q,{K_Q}}

Output

พิมพ์ Q บรรทัด บรรทัดที่ i-th (1 \leq i \leq Q) ควรมีคำตอบของคำถามที่ i-th เป็นจำนวนเต็ม

Constraints

- 2 \leq N \leq 400
- N-1 \leq M \leq 2 \times 10^5
- 1 \leq U_i < V_i \leq N
- 1 \leq T_i \leq 10^9
- 1 \leq Q \leq 3000
- 1 \leq K_i \leq 5
- 1 \leq B_{i,1} < B_{i,2} < \cdots < B_{i,K_i} \leq M
- ค่าทั้งหมดใน input เป็นจำนวนเต็ม
- สามารถเดินทางระหว่างเกาะสองเกาะใดๆ โดยใช้สะพานบางแห่ง

ตัวอย่างข้อมูล 1

3 5
1 2 10
1 3 20
1 3 30
2 3 15
2 3 25
2
1
1
2
3 5

ตัวอย่าง Output 1

25
70

สำหรับคำถามแรก เราต้องหาใช้เวลาน้อยที่สุดในการเดินทางจากเกาะ 1 ไปยังเกาะ 3 ขณะที่ใช้สะพาน 1
ใช้เวลาน้อยที่สุดคือการใช้สะพาน 1 เพื่อไปจากเกาะ 1 ไปยังเกาะ 2 จากนั้นใช้สะพาน 4 เพื่อไปยังเกาะ 3 เวลาที่ใช้คือ 10 + 15 = 25
ดังนั้น ให้พิมพ์ 25 ในบรรทัดแรก
สำหรับคำถามที่สอง เราต้องหาใช้เวลาน้อยที่สุดในการเดินทางจากเกาะ 1 ไปยังเกาะ 3 ขณะที่ใช้สะพานทั้ง 3 และ 5
ใช้เวลาน้อยที่สุดคือการใช้สะพาน 3 เพื่อไปจากเกาะ 1 ไปยังเกาะ 3 จากนั้นใช้สะพาน 5 เพื่อไปยังเกาะ 2 และสุดท้ายใช้สะพาน 4 เพื่อกลับไปยังเกาะ 3 เวลาที่ใช้คือ 30 + 25 + 15 = 70
ดังนั้น ให้พิมพ์ 70 ในบรรทัดที่สอง

ตัวอย่างข้อมูล 2

6 6
1 5 1
2 5 1
2 4 1
3 4 1
3 6 1
1 6 1
2
5
1 2 3 4 5
1
5

ตัวอย่าง Output 2

5
3

สำหรับคำถามแต่ละข้อ คุณสามารถข้ามสะพานที่ระบุในทิศทางใดก็ได้

ตัวอย่างข้อมูล 3

5 5
1 2 1000000000
2 3 1000000000
3 4 1000000000
4 5 1000000000
1 5 1000000000
1
1
3

ตัวอย่าง Output 3

4000000000

ระวังว่าคำตอบอาจไม่เหมาะกับจำนวนเต็ม 32 บิต

มีเกาะ N เกาะและสะพานทวิภาคี M แห่งเชื่อมระหว่างเกาะสองเกาะ เกาะและสะพานมีหมายเลข 1, 2, \ldots, N และ 1, 2, \ldots, M ตามลำดับ
สะพาน i เชื่อมต่อเกาะ U_i และ V_i และเวลาที่ใช้ในการข้ามไปในทิศทางใดทิศทางหนึ่งคือ T_i
ไม่มีสะพานใดที่เชื่อมต่อเกาะกับตัวมันเอง แต่เกาะสองเกาะสามารถเชื่อมต่อโดยตรงด้วยสะพานมากกว่าหนึ่งแห่งได้
เราสามารถเดินทางระหว่างเกาะสองเกาะใดๆ โดยใช้สะพานบางแห่ง
คุณได้รับคำถาม Q ข้อ ดังนั้นให้ตอบคำถามแต่ละข้อ คำถามที่ i มีดังต่อไปนี้:

คุณได้รับสะพานที่แตกต่างกัน K_i แห่ง: สะพาน B_{i,1}, B_{i,2}, \ldots, B_{i,K_i}
หาเวลาขั้นต่ำที่จำเป็นในการเดินทางจากเกาะ 1 ไปยังเกาะ N โดยใช้สะพานแต่ละแห่งอย่างน้อยหนึ่งครั้ง
พิจารณาเฉพาะเวลาที่ใช้ในการข้ามสะพานเท่านั้น คุณสามารถข้ามสะพานที่กำหนดในลำดับใดก็ได้และในทิศทางใดก็ได้

อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N M
U_1 V_1 T_1
U_2 V_2 T_2
\vdots
U_M V_M T_M
Q
K_1
B_{1,1} B_{1,2} \cdots B_{1,{K_1}}
K_2
B_{2,1} B_{2,2} \cdots B_{2,{K_2}}
\vdots
K_Q
B_{Q,1} B_{Q,2} \cdots B_{Q,{K_Q}}

เอาต์พุต

พิมพ์ Q บรรทัด บรรทัดที่ i (1 \leq i \leq Q) ควรมีคำตอบสำหรับคำถามที่ i เป็นจำนวนเต็ม
ข้อจำกัด

- 2 \leq N \leq 400
- N-1 \leq M \leq 2 \times 10^5
- 1 \leq U_i < V_i \leq N
- 1 \leq T_i \leq 10^9
- 1 \leq Q \leq 3000
- 1 \leq K_i \leq 5
- 1 \leq B_{i,1} < B_{i,2} < \cdots < B_{i,K_i} \leq M
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม
- สามารถเดินทางระหว่างเกาะสองเกาะได้โดยใช้สะพานบางแห่ง
ตัวอย่างอินพุต 1

3 5
1 2 10
1 3 20
1 3 30
2 3 15
2 3 25
2
1
1
2
3 5

ตัวอย่างเอาต์พุต 1

25
70

สำหรับแบบสอบถามแรก เราจำเป็นต้องค้นหาเวลาขั้นต่ำในการเดินทางจากเกาะ 1 ไปยังเกาะ 3 โดยใช้สะพาน 1
เวลาขั้นต่ำจะสำเร็จได้โดยใช้สะพาน 1 เพื่อเคลื่อนที่จากเกาะ 1 ไปยังเกาะ 2 จากนั้นใช้สะพาน 4 เพื่อเคลื่อนที่จากเกาะ 2 ไปยังเกาะ 3 เวลาที่ใช้คือ 10 + 15 = 25
ดังนั้น ให้พิมพ์ 25 บนบรรทัดแรก สำหรับแบบสอบถามที่สอง เราจำเป็นต้องค้นหาเวลาขั้นต่ำในการเดินทางจากเกาะ 1 ไปยังเกาะ 3 โดยใช้สะพานทั้ง 3 และ 5
เวลาขั้นต่ำจะสำเร็จได้โดยใช้สะพาน 3 เพื่อย้ายจากเกาะ 1 ไปยังเกาะ 3 จากนั้นใช้สะพาน 5 เพื่อย้ายไปยังเกาะ 2 และสุดท้ายใช้สะพาน 4 เพื่อกลับไปยังเกาะ 3 เวลาที่ใช้คือ 30 + 25 + 15 = 70
ดังนั้น ให้พิมพ์ 70 บนบรรทัดที่สอง

ตัวอย่างอินพุต 2

6 6
1 5 1
2 5 1
2 4 1
3 4 1
3 6 1
1 6 1
2
5
1 2 3 4 5
1
5

ตัวอย่างเอาต์พุต 2

5
3

สำหรับแบบสอบถามแต่ละรายการ คุณสามารถข้ามสะพานที่ระบุได้ทั้งสองทิศทาง
ตัวอย่างอินพุต 3

5 5
1 2 1000000000
2 3 1000000000
3 4 1000000000
4 5 1000000000
1 5 1000000000
1
1
3

ตัวอย่างเอาต์พุต 3

40000000000

ระวังว่าคำตอบอาจไม่พอดีกับจำนวนเต็ม 32 บิต


ทาคาฮาชิตัดสินใจทําทาโกะยากิ (ลูกปลาหมึก) และเสิร์ฟให้สนูเกะ ทาคาฮาชิสั่งให้สนูเกะยกมือซ้ายขึ้นเท่านั้นหากเขาต้องการกินทาโกะยากิ และมิฉะนั้นจะยกเฉพาะมือขวาเท่านั้น
คุณจะได้รับข้อมูลเกี่ยวกับมือที่สนูเกะกำลังยกเป็นตัวเลขสองตัว L และ R
เขายกมือซ้ายขึ้นก็ต่อเมื่อ L = 1 และยกมือขวาขึ้นก็ต่อเมื่อ R = 1 เขาอาจไม่ทําตามคําแนะนําและสามารถยกมือทั้งสองข้างหรือไม่ยกมือเลย
หาก Snuke ยกมือขึ้นเพียงข้างเดียว ให้พิมพ์ Yes ถ้าเขาอยากกินทาโกะยากิ และNo ถ้าเขาไม่กิน หากเขายกมือทั้งสองข้างหรือไม่ยกมือขึ้นให้พิมพ์ไม่ถูกต้อง
สมมติว่าถ้า Snuke ยกมือเพียงข้างเดียว เขาก็ทําตามคําแนะนําเสมอ

อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
L R

เอาต์พุต

พิมพ์ Yes, No หรือ Invalid ตามคำแนะนำในโจทย์ปัญหา

ข้อจํากัด

- L และ R แต่ละตัวคือ 0 หรือ 1

ตัวอย่างข้อมูลนำเข้า 1

1 0

ตัวอย่างเอาต์พุต 1

Yes

Snuke ต้องการกินทาโกะยากิ ดังนั้นเขาจึงยกมือซ้ายขึ้นเท่านั้น

ตัวอย่างข้อมูลนำเข้า 2

1 1

ตัวอย่างเอาต์พุต 2

Invalid

Snuke กําลังยกมือทั้งสองข้างขึ้น

ทาคาฮาชิตัดสินใจทำทาโกะยากิ (ลูกชิ้นปลาหมึก) และเสิร์ฟให้สนู๊ค ทาคาฮาชิสั่งให้สนู๊คยกมือซ้ายเท่านั้นหากต้องการกินทาโกะยากิ และยกมือขวาเท่านั้นในกรณีอื่น
คุณจะได้รับข้อมูลเกี่ยวกับมือที่สนู๊คยกเป็นจำนวนเต็มสองจำนวนคือ L และ R
เขาจะยกมือซ้ายก็ต่อเมื่อ L = 1 และยกมือขวาก็ต่อเมื่อ R = 1 เขาอาจไม่ปฏิบัติตามคำแนะนำและอาจยกมือทั้งสองข้างหรือไม่ยกมือเลยก็ได้
หากสนู๊คยกมือข้างเดียว ให้พิมพ์ Yes หากต้องการกินทาโกะยากิ และพิมพ์ No หากไม่ต้องการ หากเขายกมือทั้งสองข้างหรือไม่ยกมือเลย ให้พิมพ์ Invalid
สมมติว่าหากสนู๊คยกมือข้างเดียว เขาจะปฏิบัติตามคำแนะนำเสมอ

อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
L R

เอาต์พุต

พิมพ์ Yes, No หรือ Invalid ตามคำแนะนำในคำชี้แจงปัญหา
ข้อจำกัด

- L และ R แต่ละตัวมีค่าเป็น 0 หรือ 1

ตัวอย่างอินพุต 1

1 0

ตัวอย่างเอาต์พุต 1

Yes

Snuke อยากกินทาโกยากิ จึงยกเฉพาะมือซ้าย

ตัวอย่างอินพุต 2

1 1

ตัวอย่างเอาต์พุต 2

Invalid

Snuke กำลังยกมือทั้งสองข้าง


เราเรียกจำนวนเต็มบวก n ว่าเป็นจำนวนเต็มที่ดีก็ต่อเมื่อผลรวมของตัวหารบวกนั้นหารด้วย 3 ลงตัว
คุณได้รับจำนวนเต็มบวกสองจำนวนคือ N และ M จงหาจำนวนโมดูโล 998244353 ของลำดับความยาว M ของจำนวนเต็มบวก A ที่ผลคูณขององค์ประกอบใน A เป็นจำนวนเต็มที่ดีที่ไม่เกิน N

อินพุต

อินพุตกำหนดจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N M

เอาต์พุต

พิมพ์คำตอบ

ข้อจำกัด

- 1 \leq N \leq 10^{10}
- 1 \leq M \leq 10^5
- N และ M เป็นจำนวนเต็ม

ตัวอย่างอินพุต 1

10 1

ตัวอย่างเอาต์พุต 1

5

มีห้าลำดับที่ตรงตามเงื่อนไข:

- (2)
- (5)
- (6)
- (8)
- (10)

ตัวอย่างอินพุต 2

4 2

ตัวอย่างเอาต์พุต 2

2

มีลำดับสองลำดับที่ตรงตามเงื่อนไข:

- (1, 2)
- (2, 1)

ตัวอย่างอินพุต 3

370 907

ตัวอย่างเอาต์พุต 3

221764640

ตัวอย่างอินพุต 4

10000000000 100000

ตัวอย่างเอาต์พุต 4

447456146

เราเรียกว่าจำนวนเต็มบวก n เป็นจำนวนเต็มที่ดีถ้าและเฉพาะในกรณีที่ผลรวมของตัวหารเชิงบวกของมันหารด้วย 3
คุณจะได้รับจำนวนเต็มบวกสองตัว N และ M ค้นหาจำนวน Modulo 998244353 ของลำดับความยาว M ของจำนวนเต็มบวกเช่นผลิตภัณฑ์ขององค์ประกอบใน A เป็นจำนวนเต็มที่ดีไม่เกิน N

ป้อนข้อมูล

อินพุตได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N M

เอาท์พุท

พิมพ์คำตอบ

ข้อ จำกัด

- 1 \leq N \leq 10^{10}
- 1 \leq M \leq 10^5
- N และ M เป็นจำนวนเต็ม

อินพุตตัวอย่าง 1

10 1

ตัวอย่างเอาท์พุท 1

5

มีห้าลำดับที่ตอบสนองเงื่อนไข:

- (2)
- (5)
- (6)
- (8)
- (10)

อินพุตตัวอย่าง 2

4 2

ตัวอย่างเอาท์พุท 2

2

มีสองลำดับที่ตอบสนองเงื่อนไข:

- (1, 2)
- (2, 1)

อินพุตตัวอย่าง 3

370 907

ตัวอย่างเอาท์พุท 3

221764640

อินพุตตัวอย่าง 4

10000000000 100000

ตัวอย่างเอาท์พุท 4

447456146


คุณจะได้รับสตริงสองตัวคือ S และ T ซึ่งประกอบด้วยตัวอักษรภาษาอังกฤษตัวพิมพ์เล็ก โดยที่ S และ T มีความยาวเท่ากัน
ให้ X เป็นอาร์เรย์ว่าง และทำซ้ำขั้นตอนต่อไปนี้จนกว่า S จะเท่ากับ T:

- เปลี่ยนอักขระหนึ่งตัวใน S และผนวก S ลงท้าย X

ค้นหาอาร์เรย์ของสตริง X ที่มีจำนวนองค์ประกอบน้อยที่สุดที่ได้จากวิธีนี้ หากมีอาร์เรย์ดังกล่าวหลายตัวที่มีจำนวนองค์ประกอบน้อยที่สุด ให้ค้นหาอาร์เรย์ที่เล็กที่สุดในพจนานุกรม
ลำดับในพจนานุกรมของอาร์เรย์ของสตริงคืออะไร? สตริง S = S_1 S_2 \ldots S_N ที่มีความยาว N จะมีขนาดเล็กกว่าสตริง T = T_1 T_2 \ldots T_N ที่มีความยาว N ตามพจนานุกรม หากมีเลขจำนวนเต็ม 1 \leq i \leq N ที่ตรงตามข้อกำหนดทั้งสองข้อต่อไปนี้:

- S_1 S_2 \ldots S_{i-1} = T_1 T_2 \ldots T_{i-1}
- S_i มาก่อน T_i ตามลำดับตัวอักษร
อาร์เรย์ของสตริง X = (X_1,X_2,\ldots,X_M) ที่มีองค์ประกอบ M รายการนั้นมีขนาดเล็กกว่าอาร์เรย์ของสตริง Y = (Y_1,Y_2,\ldots,Y_M) ที่มีองค์ประกอบ M รายการหากมีจำนวนเต็ม 1 \leq j \leq M อยู่จริง โดยที่ทั้งสองข้อต่อไปนี้เป็นไปในทางเดียวกัน:

- (X_1,X_2,\ldots,X_{j-1}) = (Y_1,Y_2,\ldots,Y_{j-1})
- X_j มีขนาดเล็กกว่า Y_j ในทางเดียวกัน

อินพุต

อินพุตนั้นกำหนดจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
S
T

เอาต์พุต

ให้ M เป็นจำนวนองค์ประกอบในอาร์เรย์ที่ต้องการ พิมพ์บรรทัด M + 1
บรรทัดแรกควรมีค่าของ M
บรรทัดที่ i + 1 (1 \leq i \leq M) ควรประกอบด้วยองค์ประกอบที่ i ของอาร์เรย์
ข้อจำกัด

- S และ T เป็นสตริงที่ประกอบด้วยตัวอักษรภาษาอังกฤษตัวพิมพ์เล็กซึ่งมีความยาวระหว่าง 1 ถึง 100 รวม
- ความยาวของ S และ T เท่ากัน

ตัวอย่างอินพุต 1

adbe
bcbc

ตัวอย่างเอาต์พุต 1

3
acbe
acbc
bcbc

ในตอนแรก S = adbe เราสามารถหาค่า X = ( acbe , acbc , bcbc ) ได้โดยดำเนินการดังต่อไปนี้:

-
เปลี่ยน S เป็น acbe และต่อท้าย acbe ของ X

-
เปลี่ยน S เป็น acbc และต่อท้าย acbc ของ X

-
เปลี่ยน S เป็น bcbc และต่อท้าย bcbc ของ X

ตัวอย่างอินพุต 2

abcde
abcde

ตัวอย่างเอาต์พุต 2

0

ตัวอย่างอินพุต 3

afwgebrw
oarbrenq

ตัวอย่างเอาต์พุต 3

8
aawgebrw
aargebrw
aarbebrw
aarbebnw
aarbebnq
aarbeenq
aarbrenq
oarbrenq

คุณได้รับสตริงสองตัว S และ T ซึ่งประกอบด้วยตัวอักษรภาษาอังกฤษตัวพิมพ์เล็ก ที่นี่ S และ T มีความยาวเท่ากัน
ให้ X เป็นอาร์เรย์ว่าง และทำซ้ำการดำเนินการต่อไปนี้จนกว่า S จะเท่ากับ T:

- เปลี่ยนอักขระหนึ่งตัวใน S และเพิ่ม S ไปยังส่วนท้ายของ X

ค้นหาอาร์เรย์ของสตริง X ที่มีจำนวนองค์ประกอบน้อยที่สุดที่ได้รับในวิธีนี้ ถ้ามีหลายอาร์เรย์ดังกล่าวที่มีจำนวนองค์ประกอบน้อยที่สุด ให้ค้นหาหนึ่งที่มีลำดับตามพจนานุกรมเล็กที่สุด
ลำดับตามพจนานุกรมสำหรับอาร์เรย์ของสตริงคืออะไร?
สตริง S = S_1 S_2 \ldots S_N ที่มีความยาว N จะเล็กกว่าสตริง T = T_1 T_2 \ldots T_N ที่มีความยาว N ตามลำดับตามพจนานุกรม ถ้ามีจำนวนเต็ม 1 \leq i \leq N ที่ทำให้ทั้งสองเงื่อนไขต่อไปนี้เป็นจริง:

- S_1 S_2 \ldots S_{i-1} = T_1 T_2 \ldots T_{i-1}
- S_i มาก่อน T_i ในลำดับตัวอักษร

อาร์เรย์ของสตริง X = (X_1,X_2,\ldots,X_M) ที่มี M องค์ประกอบ จะเล็กกว่าอาร์เรย์ของสตริง Y = (Y_1,Y_2,\ldots,Y_M) ที่มี M องค์ประกอบตามลำดับตามพจนานุกรม ถ้ามีจำนวนเต็ม 1 \leq j \leq M ที่ทำให้ทั้งสองเงื่อนไขต่อไปนี้เป็นจริง:

- (X_1,X_2,\ldots,X_{j-1}) = (Y_1,Y_2,\ldots,Y_{j-1})
- X_j เล็กกว่า Y_j ตามลำดับตามพจนานุกรม

Input

อินพุตให้จาก Standard Input ในรูปแบบต่อไปนี้:
S
T

Output

ให้ M เป็นจำนวนขององค์ประกอบในอาร์เรย์ที่ต้องการ พิมพ์ M + 1 บรรทัด
บรรทัดแรกควรประกอบด้วยค่า M
บรรทัดที่ i + 1 (1 \leq i \leq M) ควรประกอบด้วยองค์ประกอบที่ i ของอาร์เรย์

เงื่อนไข

- S และ T เป็นสตริงที่ประกอบด้วยตัวอักษรภาษาอังกฤษตัวพิมพ์เล็กที่มีความยาวระหว่าง 1 ถึง 100 รวมถึง
- ความยาวของ S และ T เท่ากัน

ตัวอย่างInput 1

adbe
bcbc

ตัวอย่างOutput 1

3
acbe
acbc
bcbc

เริ่มต้น S = adbe
สามารถรับ X = ( acbe , acbc , bcbc ) โดยการดำเนินการดังต่อไปนี้:

- เปลี่ยน S เป็น acbe และเพิ่ม acbe ไปยังส่วนท้ายของ X

- เปลี่ยน S เป็น acbc และเพิ่ม acbc ไปยังส่วนท้ายของ X

- เปลี่ยน S เป็น bcbc และเพิ่ม bcbc ไปยังส่วนท้ายของ X

ตัวอย่างInput 2

abcde
abcde

ตัวอย่างOutput 2

0

ตัวอย่างInput 3

afwgebrw
oarbrenq

ตัวอย่างOutput 3

8
aawgebrw
aargebrw
aarbebrw
aarbebnw
aarbebnq
aarbeenq
aarbrenq
oarbrenq

คุณได้รับสองสตริง s และ t ประกอบด้วยตัวอักษรภาษาอังกฤษตัวพิมพ์เล็ก ที่นี่ S และ T มีความยาวเท่ากัน
ให้ x เป็นอาร์เรย์ที่ว่างเปล่าและทำซ้ำการดำเนินการต่อไปนี้จนกระทั่ง S เท่ากับ T:

- เปลี่ยนหนึ่งอักขระใน S และผนวก S ไปยังจุดสิ้นสุดของ X

ค้นหาอาร์เรย์ของสตริง x ด้วยจำนวนองค์ประกอบขั้นต่ำที่ได้รับในลักษณะนี้ หากมีหลายอาร์เรย์ดังกล่าวที่มีจำนวนองค์ประกอบขั้นต่ำให้ค้นหาพจนานุกรมที่เล็กที่สุดในหมู่พวกเขา
 คำสั่งพจนานุกรมเกี่ยวกับอาร์เรย์ของสตริงคืออะไร?
สตริง  S = S_1 S_2 \ldots S_N ของความยาว n มีขนาดเล็กกว่า lexicographically กว่าสตริง T = T_1 T_2 \ldots T_N ของความยาว n หากมีจำนวนเต็ม 1 \leq i \leq N

-  S_1 S_2 \ldots S_{i-1} = T_1 T_2 \ldots T_{i-1}
- S_i มาเร็วกว่า T_i ตามลำดับตัวอักษร

อาร์เรย์ของสตริง X = (X_1,X_2,\ldots,X_M) ที่มีองค์ประกอบ m มีขนาดเล็กกว่า lexicographically มากกว่าอาร์เรย์ของสตริง Y = (Y_1,Y_2,\ldots,Y_M) ที่มีองค์ประกอบ M หากมีจำนวนเต็ม 1 \ leq j \ leq M เช่นนี้ทั้งสองอย่างต่อไปนี้มีความพึงพอใจ:

-  (X_1,X_2,\ldots,X_{j-1}) = (Y_1,Y_2,\ldots,Y_{j-1})
- X_j มีขนาดเล็กกว่า Y_j

ป้อนข้อมูล

อินพุตได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
S
T

เอาท์พุท

ให้ m เป็นจำนวนองค์ประกอบในอาร์เรย์ที่ต้องการ พิมพ์ M + 1 บรรทัด
บรรทัดแรกควรมีค่าของ M
บรรทัด i + 1-th (1 \ leq i \ leq m) ควรมีองค์ประกอบ i-th ของอาร์เรย์

ข้อ จำกัด

- S และ T เป็นสตริงประกอบด้วยตัวอักษรภาษาอังกฤษตัวพิมพ์เล็กที่มีความยาวระหว่าง 1 ถึง 100 รวม
- ความยาวของ S และ T เท่ากัน

อินพุตตัวอย่าง 1

adbe
bcbc

ตัวอย่างเอาท์พุท 1

3
acbe
acbc
bcbc

เริ่มแรก S = adbe.
เราสามารถรับ X = ( acbe , acbc , bcbc ) ได้โดยดำเนินการต่อไปนี้:

-
เปลี่ยน S เป็น acbe และผนวก acbe ไปยังจุดสิ้นสุดของ X

-
เปลี่ยน S เป็น acbc และผนวก acbc ไปที่จุดสิ้นสุดของ X

-
เปลี่ยน S เป็น bcbc และต่อท้าย bcbc เป็นตอนท้ายของ X

อินพุตตัวอย่าง 2

abcde
abcde

ตัวอย่างเอาท์พุท 2

0

อินพุตตัวอย่าง 3

afwgebrw
oarbrenq

ตัวอย่างเอาท์พุท 3

8
aawgebrw
aargebrw
aarbebrw
aarbebnw
aarbebnq
aarbeenq
aarbrenq
oarbrenq


มีตารางที่มี H แถวและ W คอลัมน์ ให้ (i, j) แทนเซลล์ที่แถวที่ i จากด้านบนและคอลัมน์ที่ j จากด้านซ้าย
ในตอนแรกจะมีผนังหนึ่งผนังในแต่ละเซลล์
หลังจากประมวลผลแบบสอบถาม Q ข้อที่อธิบายไว้ด้านล่างตามลำดับที่กำหนดแล้ว ให้หาจำนวนผนังที่เหลือ
ในแบบสอบถามข้อที่ q คุณจะได้รับจำนวนเต็มสองจำนวนคือ R_q และ C_q
คุณวางระเบิดที่ (R_q, C_q) เพื่อทำลายผนัง เป็นผลให้เกิดกระบวนการต่อไปนี้

- หากมีผนังที่ (R_q, C_q) ให้ทำลายผนังนั้นและสิ้นสุดกระบวนการ
- ถ้าไม่มีผนังที่ (R_q, C_q) ให้ทำลายผนังแรกที่ปรากฏขึ้นเมื่อมองขึ้น ลง ซ้าย และขวาจาก (R_q, C_q) กล่าวให้ชัดเจนขึ้น กระบวนการทั้งสี่ต่อไปนี้จะเกิดขึ้นพร้อมกัน:
- หากมี i \lt R_q อยู่จริง โดยที่ผนังอยู่ที่ (i, C_q) และไม่มีผนังอยู่ที่ (k, C_q) สำหรับทุก i \lt k \lt R_q ให้ทำลายผนังที่ (i, C_q)
- หากมี i \gt R_q อยู่จริง โดยที่ผนังอยู่ที่ (i, C_q) และไม่มีผนังอยู่ที่ (k, C_q) สำหรับทุก R_q \lt k \lt i ให้ทำลายผนังที่ (i, C_q)
- หากมี j \lt C_q อยู่จริง โดยที่ผนังอยู่ที่ (R_q, j) และไม่มีผนังอยู่ที่ (R_q, k) สำหรับทุก j \lt k \lt C_q ให้ทำลายผนังที่ (R_q, j)
- หากมี j \gt C_q ที่มีกำแพงอยู่ที่ (R_q, j) และไม่มีกำแพงอยู่ที่ (R_q, k) สำหรับ C_q \lt k \lt j ทั้งหมด ให้ทำลายกำแพงที่ (R_q, j)

อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
H W Q
R_1 C_1
R_2 C_2
\vdots
R_Q C_Q

เอาต์พุต

พิมพ์จำนวนกำแพงที่เหลือหลังจากประมวลผลแบบสอบถามทั้งหมด

ข้อจำกัด

- 1 \leq H, W
- H \times W \leq 4 \times 10^5
- 1 \leq Q \leq 2 \times 10^5
- 1 \leq R_q \leq H
- 1 \leq C_q \leq W
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม

ตัวอย่างอินพุต 1

2 4 3
1 2
1 2
1 3

ตัวอย่างเอาต์พุต 1

2

กระบวนการจัดการแบบสอบถามสามารถอธิบายได้ดังนี้:

- ในแบบสอบถามที่ 1 (R_1, C_1) = (1, 2) มีกำแพงอยู่ที่ (1, 2) ดังนั้นกำแพงที่ (1, 2) จึงถูกทำลาย
- ในแบบสอบถามที่ 2 (R_2, C_2) = (1, 2) ไม่มีกำแพงอยู่ที่ (1, 2) ดังนั้นกำแพงที่ (2,2),(1,1),(1,3) ซึ่งเป็นกำแพงแรกที่ปรากฏขึ้นเมื่อมองขึ้น ลง ซ้าย และขวาจาก (1, 2) จะถูกทำลาย
- ในแบบสอบถามที่ 3 (R_3, C_3) = (1, 3) ไม่มีผนังที่ (1, 3) ดังนั้นผนังที่ (2,3),(1,4) ซึ่งเป็นผนังแรกที่ปรากฏขึ้นเมื่อมองขึ้น ลง ซ้าย และขวาจาก (1, 3) จะถูกทำลาย

หลังจากประมวลผลแบบสอบถามทั้งหมดแล้ว ยังมีผนังที่เหลืออีกสองผนังที่ (2, 1) และ (2, 4)

ตัวอย่างอินพุต 2

5 5 5
3 3
3 3
3 2
2 2
1 2

ตัวอย่างเอาต์พุต 2

10

ตัวอย่างอินพุต 3

4 3 10
2 2
4 1
1 1
4 2
2 1
3 1
1 3
1 2
4 3
4 2

ตัวอย่างเอาต์พุต 3

2

มีตารางที่มี H แถวและ W คอลัมน์ ให้ (i, j) แทนเซลล์ที่แถวที่ i จากด้านบนและคอลัมน์ที่ j จากด้านซ้าย
ในตอนแรกจะมีผนังหนึ่งผนังในแต่ละเซลล์
หลังจากประมวลผลแบบสอบถาม Q ข้อที่อธิบายไว้ด้านล่างตามลำดับที่กำหนดแล้ว ให้หาจำนวนผนังที่เหลือ
ในแบบสอบถามข้อที่ q คุณจะได้รับจำนวนเต็มสองจำนวนคือ R_q และ C_q
คุณวางระเบิดที่ (R_q, C_q) เพื่อทำลายผนัง เป็นผลให้เกิดกระบวนการต่อไปนี้

- หากมีผนังที่ (R_q, C_q) ให้ทำลายผนังนั้นและสิ้นสุดกระบวนการ
- ถ้าไม่มีผนังที่ (R_q, C_q) ให้ทำลายผนังแรกที่ปรากฏขึ้นเมื่อมองขึ้น ลง ซ้าย และขวาจาก (R_q, C_q) กล่าวให้ชัดเจนขึ้น กระบวนการทั้งสี่ต่อไปนี้จะเกิดขึ้นพร้อมกัน:
- หากมี i \lt R_q อยู่จริง โดยที่ผนังอยู่ที่ (i, C_q) และไม่มีผนังอยู่ที่ (k, C_q) สำหรับทุก i \lt k \lt R_q ให้ทำลายผนังที่ (i, C_q)
- หากมี i \gt R_q อยู่จริง โดยที่ผนังอยู่ที่ (i, C_q) และไม่มีผนังอยู่ที่ (k, C_q) สำหรับทุก R_q \lt k \lt i ให้ทำลายผนังที่ (i, C_q)
- หากมี j \lt C_q อยู่จริง โดยที่ผนังอยู่ที่ (R_q, j) และไม่มีผนังอยู่ที่ (R_q, k) สำหรับทุก j \lt k \lt C_q ให้ทำลายผนังที่ (R_q, j) - หากมี j \gt C_q ที่มีกำแพงอยู่ที่ (R_q, j) และไม่มีกำแพงอยู่ที่ (R_q, k) สำหรับ C_q \lt k \lt j ทั้งหมด ให้ทำลายกำแพงที่ (R_q, j)

อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
H W Q
R_1 C_1
R_2 C_2
\vdots
R_Q C_Q

เอาต์พุต

พิมพ์จำนวนกำแพงที่เหลือหลังจากประมวลผลแบบสอบถามทั้งหมด

ข้อจำกัด

- 1 \leq H, W
- H \times W \leq 4 \times 10^5
- 1 \leq Q \leq 2 \times 10^5
- 1 \leq R_q \leq H
- 1 \leq C_q \leq W
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม
ตัวอย่างอินพุต 1

2 4 3
1 2
1 2
1 3

ตัวอย่างเอาต์พุต 1

2

กระบวนการจัดการแบบสอบถามสามารถอธิบายได้ดังนี้:

- ในแบบสอบถามที่ 1 (R_1, C_1) = (1, 2) มีกำแพงอยู่ที่ (1, 2) ดังนั้นกำแพงที่ (1, 2) จึงถูกทำลาย
- ในแบบสอบถามที่ 2 (R_2, C_2) = (1, 2) ไม่มีกำแพงอยู่ที่ (1, 2) ดังนั้นกำแพงที่ (2,2),(1,1),(1,3) ซึ่งเป็นกำแพงแรกที่ปรากฏขึ้นเมื่อมองขึ้น ลง ซ้าย และขวาจาก (1, 2) จะถูกทำลาย
- ในแบบสอบถามที่ 3 (R_3, C_3) = (1, 3) ไม่มีผนังที่ (1, 3) ดังนั้นผนังที่ (2,3),(1,4) ซึ่งเป็นผนังแรกที่ปรากฏขึ้นเมื่อมองขึ้น ลง ซ้าย และขวาจาก (1, 3) จะถูกทำลาย

หลังจากประมวลผลการค้นหาทั้งหมดแล้ว ยังมีผนังที่เหลืออีกสองผนังที่ (2, 1) และ (2, 4)

ตัวอย่างอินพุต 2

5 5 5
3 3
3 3
3 2
2 2
1 2

ตัวอย่างเอาต์พุต 2

10

ตัวอย่างอินพุต 3

4 3 10
2 2
4 1
1 1
4 2
2 1
3 1
1 3
1 2
4 3
4 2

ตัวอย่างเอาต์พุต 3

2

There is a grid with H rows and W columns. Let (i, j) denote the cell at the i-th row from the top and j-th column from the left.
Initially, there is one wall in each cell.
After processing Q queries explained below in the order they are given, find the number of remaining walls.
In the q-th query, you are given two integers R_q and C_q.
You place a bomb at (R_q, C_q) to destroy walls. As a result, the following process occurs.

- If there is a wall at (R_q, C_q), destroy that wall and end the process.
- If there is no wall at (R_q, C_q), destroy the first walls that appear when looking up, down, left, and right from (R_q, C_q). More precisely, the following four processes occur simultaneously:
- If there exists an i \lt R_q such that a wall exists at (i, C_q) and no wall exists at (k, C_q) for all i \lt k \lt R_q, destroy the wall at (i, C_q).
- If there exists an i \gt R_q such that a wall exists at (i, C_q) and no wall exists at (k, C_q) for all R_q \lt k \lt i, destroy the wall at (i, C_q).
- If there exists a j \lt C_q such that a wall exists at (R_q, j) and no wall exists at (R_q, k) for all j \lt k \lt C_q, destroy the wall at (R_q, j).
- If there exists a j \gt C_q such that a wall exists at (R_q, j) and no wall exists at (R_q, k) for all C_q \lt k \lt j, destroy the wall at (R_q, j).

Input

The input is given from Standard Input in the following format:
H W Q
R_1 C_1
R_2 C_2
\vdots
R_Q C_Q

Output

Print the number of remaining walls after processing all queries.

Constraints

- 1 \leq H, W
- H \times W \leq 4 \times 10^5
- 1 \leq Q \leq 2 \times 10^5
- 1 \leq R_q \leq H
- 1 \leq C_q \leq W
- All input values are integers.

Sample Input 1

2 4 3
1 2
1 2
1 3

Sample Output 1

2

The process of handling the queries can be explained as follows:

- In the 1st query, (R_1, C_1) = (1, 2). There is a wall at (1, 2), so the wall at (1, 2) is destroyed.
- In the 2nd query, (R_2, C_2) = (1, 2). There is no wall at (1, 2), so the walls at (2,2),(1,1),(1,3), which are the first walls that appear when looking up, down, left, and right from (1, 2), are destroyed.
- In the 3rd query, (R_3, C_3) = (1, 3). There is no wall at (1, 3), so the walls at (2,3),(1,4), which are the first walls that appear when looking up, down, left, and right from (1, 3), are destroyed.

After processing all queries, there are two remaining walls, at (2, 1) and (2, 4).

Sample Input 2

5 5 5
3 3
3 3
3 2
2 2
1 2

Sample Output 2

10

Sample Input 3

4 3 10
2 2
4 1
1 1
4 2
2 1
3 1
1 3
1 2
4 3
4 2

Sample Output 3

2


คุณได้รับลำดับ A = (A_1, A_2, \dots, A_N) ที่มีความยาว N และจำนวนเต็ม K
มี 2^{N-1} วิธีในการหาร A ออกเป็นลำดับย่อยที่ต่อเนื่องกันหลายลำดับ มีกี่วิธีในการหารเหล่านี้ที่ไม่มีลำดับย่อยซึ่งองค์ประกอบมีผลรวมเป็น K หาค่าโมดูโล 998244353
ในที่นี้ "การหาร A ออกเป็นลำดับย่อยที่ต่อเนื่องกันหลายลำดับ" หมายถึงขั้นตอนต่อไปนี้

- เลือกหมายเลข k (1 \leq k \leq N) ของลำดับย่อยและลำดับจำนวนเต็ม (i_1, i_2, \dots, i_k, i_{k+1}) ได้อย่างอิสระซึ่งเป็นไปตาม 1 = i_1 \lt i_2 \lt \dots \lt i_k \lt i_{k+1} = N+1
- สำหรับแต่ละ 1 \leq n \leq k ลำดับย่อยที่ n จะถูกสร้างขึ้นโดยการนำองค์ประกอบที่ i_n ถึง (i_{n+1} - 1) ของ A มาใช้ โดยรักษาลำดับขององค์ประกอบเหล่านั้นไว้
ต่อไปนี้คือตัวอย่างการหารของ A = (1, 2, 3, 4, 5):

- (1, 2, 3), (4), (5)
- (1, 2), (3, 4, 5)
- (1, 2, 3, 4, 5)

อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N K
A_1 A_2 \dots A_N

เอาต์พุต

พิมพ์โมดูโล 998244353 ของจำนวนนับ

ข้อจำกัด

- 1 \leq N \leq 2 \times 10^5
- -10^{15} \leq K \leq 10^{15}
- -10^9 \leq A_i \leq 10^9
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม
ตัวอย่างอินพุต 1

3 3
1 2 3

ตัวอย่างเอาต์พุต 1

2

มีสองกลุ่มที่ตรงตามเงื่อนไขในคำชี้แจงปัญหา:

- (1), (2, 3)
- (1, 2, 3)

ตัวอย่างอินพุต 2

5 0
0 0 0 0 0

ตัวอย่างเอาต์พุต 2

0

ตัวอย่างอินพุต 3

10 5
-5 -1 -7 6 -6 -2 -5 10 2 -10

ตัวอย่างเอาต์พุต 3

428

คุณจะได้รับลำดับ A = (A_1, A_2, \dots, A_N) ความยาว N และจำนวนเต็ม K
มี 2^{N-1} วิธีแบ่ง A ออกเป็นหลายลำดับที่ต่อเนื่องกัน มีกี่การแบ่งที่ไม่มีลำดับย่อยใด ๆ ที่มีผลรวมขององค์ประกอบเท่ากับ K? หาจำนวนนับโมดูโล 998244353
ที่นี่ "การแบ่งออกเป็นหลาย ๆ ลำดับที่ต่อเนื่องกัน" หมายถึงขั้นตอนต่อไปนี้

- เลือกหมายเลข k (1 \leq k \leq N) ได้อย่างอิสระของลำดับและลำดับจำนวนเต็ม (i_1, i_2, \dots, i_k, i_{k+1}) พอใจ 1 = i_1 \lt i_2 \lt \dots \lt i_k \lt i_{k+1} = N+1.
-สำหรับแต่ละ 1 \leq n \leq k, ลำดับที่ n-th นั้นเกิดขึ้นจากการใช้ i_n-th ถึง  (i_{n+1} - 1)-องค์ประกอบของ A รักษาคำสั่งของพวกเขา

นี่คือตัวอย่างของลำดับสำหรับ A = (1, 2, 3, 4, 5):

- (1, 2, 3), (4), (5)
- (1, 2), (3, 4, 5)
- (1, 2, 3, 4, 5)

ป้อนข้อมูล

อินพุตได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N K
A_1 A_2 \dots A_N

เอาท์พุท

พิมพ์ผลลัพธ์ modulo 998244353

ข้อ จำกัด

- 1 \leq N \leq 2 \times 10^5
- -10^{15} \leq K \leq 10^{15}
- -10^9 \leq A_i \leq 10^9
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม

อินพุตตัวอย่าง 1

3 3
1 2 3

ตัวอย่างเอาท์พุท 1

2

มีสองลำดับที่เป็นไปตามเงื่อนไขในคำแถลงปัญหา:

- (1), (2, 3)
- (1, 2, 3)

อินพุตตัวอย่าง 2

5 0
0 0 0 0 0

ตัวอย่างเอาท์พุท 2

0

อินพุตตัวอย่าง 3

10 5
-5 -1 -7 6 -6 -2 -5 10 2 -10

ตัวอย่างเอาท์พุท 3

428

คุณจะได้รับลำดับ A = (A_1, A_2, \dots, A_N) ความยาว N และจำนวนเต็ม K
มี 2^{N-1} วิธีแบ่ง a ออกเป็นหลายลำดับที่ต่อเนื่องกัน มีกี่วิธีที่ไม่มีลำดับย่อยใด ๆ ที่ผลรวมของสมาชิกเท่ากับ K? ค้นหา count modulo 998244353
ที่นี่ "การแบ่งออกเป็นหลาย ๆ ลำดับที่ต่อเนื่องกัน" หมายถึงขั้นตอนต่อไปนี้

- เลือกหมายเลข k (1 \leq k \leq N) ได้อย่างอิสระของลำดับและลำดับจำนวนเต็ม (i_1, i_2, \dots, i_k, i_ {k+1}) พอใจ 1 = i_1 \lt i_2 \lt \dots \dots lt i_k \lt i_{k+1} = N+1
-สำหรับแต่ละ 1 \leq n \leq k, ลำดับย่อยที่ n-th ประกอบด้วยสมาชิกตั้งแต่ i_n ถึง (i_{n+1} - 1) ของ A โดยรักษาลำดับเดิม

นี่คือตัวอย่างของแผนกสำหรับ A = (1, 2, 3, 4, 5):

- (1, 2, 3), (4), (5)
- (1, 2), (3, 4, 5)
- (1, 2, 3, 4, 5)

ป้อนข้อมูล

อินพุตได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N K
A_1 A_2 \dots A_N

เอาท์พุท

พิมพ์ count modulo 998244353

ข้อ จำกัด

- 1 \leq N \leq 2 \times 10^5
- -10^{15} \leq K \leq 10^{15}
- -10^9 \leq A_i \leq 10^9
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม

อินพุตตัวอย่าง 1

3 3
1 2 3

ตัวอย่างเอาท์พุท 1

2

มีสองแผนกที่เป็นไปตามเงื่อนไขในคำแถลงปัญหา:

- (1), (2, 3)
- (1, 2, 3)

อินพุตตัวอย่าง 2

5 0
0 0 0 0 0

ตัวอย่างเอาท์พุท 2

0

อินพุตตัวอย่าง 3

10 5
-5 -1 -7 6 -6 -2 -5 10 2 -10

ตัวอย่างเอาท์พุท 3

428


มีธาตุอยู่ N ชนิด หมายเลข 1, 2,  \ldots, N ธาตุแต่ละชนิดสามารถรวมกันได้ เมื่อรวมธาตุชนิดที่ i กับ j จะได้ธาตุชนิดใหม่ A_{i, j} ถ้า i ≥ j และได้ธาตุชนิดใหม่ A_{j, i} ถ้า i < j
เริ่มต้นด้วยธาตุชนิดที่ 1 นำไปรวมกับธาตุชนิดที่ 1, 2, \ldots, N ตามลำดับ จงหาธาตุชนิดสุดท้ายที่ได้

Input

ข้อมูลเข้าถูกกำหนดให้มาจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N
A_{1, 1}
A_{2, 1} A_{2, 2}
\vdots
A_{N, 1} A_{N, 2} \ldots A_{N, N}

Output

พิมพ์หมายเลขที่แสดงถึงองค์ประกอบสุดท้ายที่ได้รับ

ข้อจำกัด

- 1 \leq N \leq 100
- 1 \leq A_{i, j} \leq N
- ค่าข้อมูลนำเข้าทั้งหมดเป็นจำนวนเต็ม

ตัวอย่าง Input 1

4
3
2 4
3 1 2
2 1 2 4

ตัวอย่าง Input 1

2

-
การรวมองค์ประกอบที่ 1 เข้ากับองค์ประกอบที่ 1 จะส่งผลให้เกิดองค์ประกอบที่ 3

-
การรวมองค์ประกอบที่ 3 เข้ากับองค์ประกอบที่ 2 จะส่งผลให้เกิดองค์ประกอบที่ 1

-
การรวมองค์ประกอบที่ 1 เข้ากับองค์ประกอบที่ 3 จะส่งผลให้เกิดองค์ประกอบที่ 3

-
การรวมองค์ประกอบที่ 3 เข้ากับองค์ประกอบที่ 4 จะส่งผลให้เกิดองค์ประกอบที่ 2

ดังนั้น ค่าที่กำหนดให้แสดงผลจึงเป็น 2

ตัวอย่าง Input 2

5
5
5 5
5 5 5
5 5 5 5
5 5 5 5 5

ตัวอย่าง Output  2

5

ตัวอย่าง Input 3

6
2
1 5
1 6 3
2 6 1 4
2 1 1 1 6
5 6 1 2 2 5

ตัวอย่าง Output 3

5

มีองค์ประกอบประเภท N หมายเลข 1, 2, \ldots, N.
องค์ประกอบสามารถรวมกันได้ เมื่อองค์ประกอบ i และ j ถูกรวมเข้าด้วยกันพวกเขาจะแปลงเป็นองค์ประกอบ A_ {i, j} ถ้าฉัน \geq j และเป็นองค์ประกอบ A_ {j, i} ฉัน i<j
เริ่มต้นด้วยองค์ประกอบ 1 รวมเข้ากับองค์ประกอบ 1, 2, \ldots, N ในลำดับนี้ ค้นหาองค์ประกอบสุดท้ายที่ได้รับ

ป้อนข้อมูล

อินพุตได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N
A_{1, 1}
A_{2, 1} A_{2, 2}
\vdots
A_{N, 1} A_{N, 2} \ldots A_{N, N}

เอาท์พุท

พิมพ์หมายเลขที่แสดงองค์ประกอบสุดท้ายที่ได้รับ

ข้อ จำกัด

- 1 \leq N \leq 100
- 1 \leq A_{i, j} \leq N
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม

อินพุตตัวอย่าง 1

4
3
2 4
3 1 2
2 1 2 4

ตัวอย่างเอาท์พุท 1

2

-
การรวมองค์ประกอบ 1 กับองค์ประกอบ 1 ผลลัพธ์ในองค์ประกอบ 3

-
การรวมองค์ประกอบ 3 เข้ากับองค์ประกอบ 2 ผลลัพธ์ในองค์ประกอบ 1

-
การรวมองค์ประกอบ 1 กับองค์ประกอบ 3 ผลลัพธ์ในองค์ประกอบ 3

-
การรวมองค์ประกอบ 3 กับองค์ประกอบ 4 ผลลัพธ์ในองค์ประกอบ 2

ดังนั้นค่าที่จะพิมพ์คือ 2

อินพุตตัวอย่าง 2

5
5
5 5
5 5 5
5 5 5 5
5 5 5 5 5

ตัวอย่างเอาท์พุท 2

5

อินพุตตัวอย่าง 3

6
2
1 5
1 6 3
2 6 1 4
2 1 1 1 6
5 6 1 2 2 5

ตัวอย่างเอาท์พุท 3

5

มีองค์ประกอบ N ประเภทที่มีหมายเลข 1, 2, \ldots, N
องค์ประกอบสามารถรวมกันได้ เมื่อรวมองค์ประกอบ i และ j เข้าด้วยกัน องค์ประกอบเหล่านั้นจะเปลี่ยนเป็นองค์ประกอบ A_{i, j} ถ้า i \geq j และเปลี่ยนเป็นองค์ประกอบ A_{j, i} ถ้า i < j
เริ่มต้นด้วยองค์ประกอบ 1 รวมกับองค์ประกอบ 1, 2, \ldots, N ตามลำดับนี้ หาองค์ประกอบสุดท้ายที่ได้

อินพุต

อินพุตได้จากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N
A_{1, 1}
A_{2, 1} A_{2, 2}
\vdots
A_{N, 1} A_{N, 2} \ldots A_{N, N}

เอาต์พุต

พิมพ์ตัวเลขที่แสดงถึงองค์ประกอบสุดท้ายที่ได้

ข้อจำกัด

- 1 \leq N \leq 100
- 1 \leq A_{i, j} \leq N
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม

ตัวอย่างอินพุต 1

4
3
2 4
3 1 2
2 1 2 4

ตัวอย่างเอาต์พุต 1

2

-
การรวมองค์ประกอบ 1 กับองค์ประกอบ 1 ทำให้เกิดองค์ประกอบ 3

-
การรวมองค์ประกอบ 3 กับองค์ประกอบ 2 ทำให้เกิดองค์ประกอบ 1

-
การรวมองค์ประกอบ 1 กับองค์ประกอบ 3 ทำให้เกิดองค์ประกอบ 3

-
การรวมองค์ประกอบ 3 กับองค์ประกอบ 4 ทำให้เกิดองค์ประกอบ 2

ดังนั้น ค่าที่จะพิมพ์คือ 2

ตัวอย่างอินพุต 2

5
5
5 5
5 5 5
5 5 5 5
5 5 5 5 5

ตัวอย่างเอาต์พุต 2

5

ตัวอย่างอินพุต 3

6
2
1 5
1 6 3
2 6 1 4
2 1 1 1 6
5 6 1 2 2 5

ตัวอย่างผลลัพธ์ 3

5


มีเค้กวงกลมแบ่งออกเป็น N ชิ้นตามเส้นตัด เส้นตัดแต่ละเส้นเป็นส่วนของเส้นตรงที่เชื่อมต่อจุดศูนย์กลางของวงกลมกับจุดบนส่วนโค้ง
ชิ้นส่วนและเส้นตัดมีหมายเลข 1, 2, \ldots, N ตามลําดับเข็มนาฬิกา และชิ้นส่วน i มีมวล A_i ชิ้น 1 เรียกอีกอย่างว่าชิ้นส่วน N + 1
เส้นตัด i อยู่ระหว่างชิ้นส่วน i และ i + 1 และจัดเรียงตามเข็มนาฬิกาตามลําดับนี้: ชิ้น 1, เส้นตัด 1, ชิ้น 2, เส้นตัด 2, \ldots, ชิ้นส่วน N, เส้นตัด N
เราต้องการแบ่งเค้กนี้ให้กับคน K ภายใต้เงื่อนไขต่อไปนี้ ให้ w_i เป็นผลรวมของมวลของชิ้นส่วนที่ได้รับจากบุคคลที่ 1

- แต่ละคนจะได้รับชิ้นส่วนติดต่อกันอย่างน้อยหนึ่งชิ้น
- ไม่มีชิ้นส่วนที่ไม่มีใครได้รับ
- ภายใต้สองเงื่อนไขข้างต้น \min(w_1, w_2, \ldots, w_K) จะถูกขยายใหญ่สุด

ค้นหาค่าของ \min(w_1, w_2, ldots, w_K) ในส่วนที่ตรงตามเงื่อนไข และจํานวนเส้นตัดที่ไม่เคยตัดในส่วนที่ตรงตามเงื่อนไข ที่นี่ เส้นตัด i ถือว่าถูกตัดหากมอบชิ้นส่วน i และ i + 1 ให้กับคนที่แตกต่างกัน

อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N K
A_1 A_2 \ldots A_N

ผลิตภัณฑ์

ให้ x เป็นค่าของ \min(w_1, w_2,\ldots, w_K) ในการแบ่งที่ตรงตามเงื่อนไข และ y เป็นจํานวนเส้นตัดที่ไม่เคยตัด พิมพ์ x และ y ตามลําดับนี้ คั่นด้วยช่องว่าง

ข้อจํากัด

- 2 \leq K \leq N \leq 2 \times 10^5
- 1 \leq A_i \leq 10^4
- ค่าอินพุตทั้งหมดเป็นจํานวนเต็ม

ตัวอย่างข้อมูลนำเข้า 1

5 2
3 6 8 6 4

ตัวอย่างเอาต์พุต 1

13 1

แผนกต่อไปนี้เป็นไปตามเงื่อนไข:

- มอบชิ้นส่วน 2, 3 ให้กับคนหนึ่งและชิ้นส่วน 4, 5, 1 ให้กับอีกคนหนึ่ง ชิ้นส่วน 2, 3 มีมวลรวม 14 ชิ้นและชิ้นส่วน 4, 5, 1 มีมวลรวม 13
- มอบชิ้นส่วน 3, 4 ให้กับคนหนึ่งและชิ้นส่วน 5, 1, 2 ให้กับอีกคนหนึ่ง ชิ้นส่วน 3, 4 มีมวลรวม 14 ชิ้นและชิ้นส่วนที่ 5, 1, 2 มีมวลรวม 13

ค่าของ\ min(w_1, w_2) ในส่วนที่ตรงตามเงื่อนไขคือ 13 และมีเส้นตัดหนึ่งเส้นที่ไม่ได้ตัดในส่วนใดส่วนหนึ่ง: เส้นตัด 5

ตัวอย่างข้อมูลนำเข้า 2

6 3
4 7 11 3 9 2

ตัวอย่างเอาต์พุต 2

11 1

ตัวอย่างข้อมูลนำเข้า 3

10 3
2 9 8 1 7 9 1 3 5 8

ตัวอย่างเอาต์พุต 3

17 4

มีเค้กกลมๆ หนึ่งชิ้นที่ถูกแบ่งออกเป็น N ชิ้นด้วยเส้นแบ่ง โดยแต่ละชิ้นที่ตัดออกจะเป็นเส้นแบ่งที่เชื่อมจุดศูนย์กลางของวงกลมกับจุดบนส่วนโค้ง
ชิ้นส่วนและเส้นแบ่งออกจะมีหมายเลข 1, 2, \ldots, N ตามลำดับตามเข็มนาฬิกา และชิ้นที่ i มีมวลเท่ากับ A_i ชิ้นที่ 1 เรียกอีกอย่างว่า ชิ้นที่ N + 1
เส้นแบ่งออก i อยู่ระหว่างชิ้นที่ i และ i + 1 และเรียงตามเข็มนาฬิกาตามลำดับดังนี้ ชิ้นที่ 1, เส้นแบ่งออก 1, ชิ้นที่ 2, เส้นแบ่งออก 2, \ldots, ชิ้นที่ N, เส้นแบ่งออก N
เราต้องการแบ่งเค้กชิ้นนี้ให้กับคน K คนภายใต้เงื่อนไขต่อไปนี้ ให้ w_i เป็นผลรวมของมวลของชิ้นส่วนที่คนที่ i ได้รับ

- แต่ละคนจะได้รับชิ้นส่วนติดต่อกันหนึ่งชิ้นขึ้นไป
- ไม่มีชิ้นส่วนใดที่ไม่มีใครได้รับ
- ภายใต้เงื่อนไขสองข้อข้างต้น จะให้ค่าสูงสุด \min(w_1, w_2, \ldots, w_K)

หาค่าของ \min(w_1, w_2, \ldots, w_K) ในส่วนหารที่ตรงตามเงื่อนไข และจำนวนเส้นตัดที่ไม่เคยถูกตัดในส่วนหารที่ตรงตามเงื่อนไข ในที่นี้ เส้นตัด i ถือว่าถูกตัด ถ้าชิ้นส่วน i และ i + 1 ถูกกำหนดให้กับบุคคลคนละคน

อินพุต

อินพุตกำหนดจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N K
A_1 A_2 \ldots A_N

เอาต์พุต

ให้ x เป็นค่าของ \min(w_1, w_2, \ldots, w_K) ในส่วนหารที่ตรงตามเงื่อนไข และ y เป็นจำนวนเส้นตัดที่ไม่เคยถูกตัด พิมพ์ x และ y ตามลำดับนี้ โดยคั่นด้วยช่องว่าง

ข้อจำกัด

- 2 \leq K \leq N \leq 2 \times 10^5
- 1 \leq A_i \leq 10^4
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม

ตัวอย่างอินพุต 1

5 2
3 6 8 6 4

ตัวอย่างเอาต์พุต 1

13 1

การแบ่งส่วนต่อไปนี้เป็นไปตามเงื่อนไข:

- แบ่งชิ้นส่วน 2, 3 ให้กับบุคคลหนึ่ง และชิ้นส่วน 4, 5, 1 ให้กับอีกบุคคลหนึ่ง ชิ้นส่วน 2, 3 มีมวลรวม 14 และชิ้นส่วน 4, 5, 1 มีมวลรวม 13
- แบ่งชิ้นส่วน 3, 4 ให้กับบุคคลหนึ่ง และชิ้นส่วน 5, 1, 2 ให้กับอีกบุคคลหนึ่ง ชิ้นส่วน 3, 4 มีมวลรวม 14 ชิ้น และชิ้นส่วน 5, 1, 2 มีมวลรวม 13 ชิ้น

ค่า \min(w_1, w_2) ในการแบ่งส่วนที่ตรงตามเงื่อนไขคือ 13 และมีเส้นตัดหนึ่งเส้นที่ไม่ได้ถูกตัดในทั้งสองการแบ่ง: เส้นตัด 5

ตัวอย่างอินพุต 2

6 3
4 7 11 3 9 2

ตัวอย่างเอาต์พุต 2

11 1

ตัวอย่างอินพุต 3

10 3
2 9 8 1 7 9 1 3 5 8

ตัวอย่างเอาต์พุต 3

17 4

มีเค้กทรงกลมซึ่งถูกแบ่งออกเป็น N ชิ้นด้วยการตัดเป็นเส้นตรง แต่ละเส้นตัดเป็นส่วนที่เชื่อมต่อศูนย์กลางของวงกลมกับจุดบนส่วนโค้ง ชิ้นเค้กและเส้นตัดถูกกำหนดหมายเลข 1, 2, \ldots, N ตามเข็มนาฬิกา และชิ้นที่ i มีมวลเป็น A_i ชิ้นที่ 1 ก็เรียกว่าชิ้นที่ N + 1 ได้เช่นกัน เส้นตัดที่ i อยู่ระหว่างชิ้นที่ i และ i + 1 และถูกจัดเรียงตามเข็มนาฬิกาในลำดับนี้: ชิ้นที่ 1, เส้นตัดที่ 1, ชิ้นที่ 2, เส้นตัดที่ 2, \ldots, ชิ้นที่ N, เส้นตัดที่ N เราต้องการแบ่งเค้กนี้ให้กับ K คนภายใต้เงื่อนไขดังต่อไปนี้ ให้ w_i เป็นผลรวมของมวลชิ้นเค้กที่ได้รับโดยคนที่ i

- แต่ละคนจะได้รับชิ้นเค้กที่ต่อเนื่องกันหนึ่งชิ้นหรือมากกว่านั้น
- ไม่มีชิ้นใดที่ไม่มีคนได้รับ
- ภายใต้สองเงื่อนไขข้างต้น \min(w_1, w_2, \ldots, w_K) จะถูกเพิ่มมากที่สุด

ค้นหาค่าของ \min(w_1, w_2, \ldots, w_K) ในการแบ่งที่ตรงตามเงื่อนไข และจำนวนเส้นตัดที่ไม่เคยถูกตัดในการแบ่งที่ตรงตามเงื่อนไข ตรงนี้ เส้นตัด i ถือว่าถูกตัดหากชิ้นที่ i และ i + 1 ถูกแบ่งให้กับคนที่ต่างกัน

Input

ข้อมูลนำเข้าจะได้รับจาก Standard Input ในรูปแบบต่อไปนี้:
N K
A_1 A_2 \ldots A_N

Output

ให้ x เป็นค่าของ \min(w_1, w_2, \ldots, w_K) ในการแบ่งที่ตรงตามเงื่อนไข และให้ y เป็นจำนวนเส้นตัดที่ไม่เคยถูกตัด พิมพ์ x และ y ในลำดับนี้คั่นด้วยช่องว่าง

ข้อจำกัด

- 2 \leq K \leq N \leq 2 \times 10^5
- 1 \leq A_i \leq 10^4
- ค่าทั้งหมดในข้อมูลนำเข้าเป็นจำนวนเต็ม

ตัวอย่างข้อมูลนำเข้า 1

5 2
3 6 8 6 4

ตัวอย่างผลลัพธ์ 1

13 1

การแบ่งที่ต่อไปนี้เป็นไปตามเงื่อนไข:

- ให้ชิ้นที่ 2, 3 กับคนหนึ่ง และชิ้นที่ 4, 5, 1 กับอีกคน ชิ้นที่ 2, 3 มีมวลรวม 14 และชิ้นที่ 4, 5, 1 มีมวลรวม 13
- ให้ชิ้นที่ 3, 4 กับคนหนึ่ง และชิ้นที่ 5, 1, 2 กับอีกคน ชิ้นที่ 3, 4 มีมวลรวม 14 และชิ้นที่ 5, 1, 2 มีมวลรวม 13

ค่าของ \min(w_1, w_2) ในการแบ่งที่ตรงตามเงื่อนไขคือ 13 และมีหนึ่งเส้นตัดที่ไม่ถูกตัดในทั้งสองการแบ่ง: เส้นตัดที่ 5

ตัวอย่างข้อมูลนำเข้า 2

6 3
4 7 11 3 9 2

ตัวอย่างผลลัพธ์ 2

11 1

ตัวอย่างข้อมูลนำเข้า 3

10 3
2 9 8 1 7 9 1 3 5 8

ตัวอย่างผลลัพธ์ 3

17 4


ในอาณาจักร AtCoder ลูกชายคนโตจะได้รับชื่อทาโร่เสมอ ไม่มีใครได้รับชื่อทาโร่
ลูกชายคนโตเป็นลูกชายคนแรกในแต่ละครอบครัว
มีครอบครัว N ครอบครัวในอาณาจักร และมีทารก M คนเกิด ก่อนที่ทารก M คนจะเกิด ไม่มีครอบครัวใดใน N ครอบครัวที่มีทารกเลย
ข้อมูลเกี่ยวกับทารกจะได้รับตามลำดับเวลาของการเกิด
ทารกคนที่ i เกิดในครอบครัว A_i และทารกจะเป็นชายถ้า B_i เป็น M และเป็นหญิงถ้าเป็น F
ตรวจสอบว่าทารก M คนใดได้รับชื่อทาโร่หรือไม่

อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N M
A_1 B_1
\vdots
A_M B_M

เอาต์พุต

พิมพ์ M บรรทัด
บรรทัดที่ i (1\leq i \leq M) ควรประกอบด้วย Yes หากชื่อที่ให้กับเด็กทารกคนที่ i คือตัวโระ และ No หากไม่ใช่

ข้อจำกัด

- 1\leq N,M\leq 100
- 1\leq A_i\leq N
- B_i คือ M หรือ F
- ตัวเลขทั้งหมดในอินพุตเป็นจำนวนเต็ม

ตัวอย่างอินพุต 1

2 4
1 M
1 M
2 F
2 M

ตัวอย่างเอาต์พุต 1

Yes
No
No
Yes

ทารกคนแรกเป็นลูกชายที่เกิดก่อนในครอบครัว 1 ดังนั้นจึงมีชื่อว่าทาโร่
ทารกคนที่สองไม่ใช่ลูกชายที่เกิดก่อนในครอบครัว 1 ดังนั้นจึงไม่ได้รับการตั้งชื่อว่าทาโร่
ทารกคนที่สามเป็นผู้หญิง ดังนั้นจึงไม่ได้รับการตั้งชื่อว่าทาโร่
ทารกคนที่สี่เป็นลูกชายที่เกิดก่อนในครอบครัว 2 ดังนั้นจึงได้รับการตั้งชื่อว่าทาโร่ โปรดทราบว่าทารกคนที่สามก็เกิดในครอบครัว 2 เช่นกัน แต่เป็นลูกชายที่เกิดก่อนในครอบครัว 2 ที่มีชื่อว่าทาโร่

ตัวอย่างอินพุต 2

4 7
2 M
3 M
1 F
4 F
4 F
1 F
2 M

ตัวอย่างเอาต์พุต 2

Yes
Yes
No
No
No
No
No

ในอาณาจักร AtCoder ลูกชายคนโตจะได้รับชื่อทาโร่เสมอ ไม่มีใครได้รับชื่อทาโร่
ลูกชายคนโตเป็นลูกชายคนแรกในแต่ละครอบครัว
มีครอบครัว N ครอบครัวในอาณาจักร และมีทารก M คนเกิด ก่อนที่ทารก M คนจะเกิด ไม่มีครอบครัวใดใน N ครอบครัวที่มีทารกเลย
ข้อมูลเกี่ยวกับทารกจะได้รับตามลำดับเวลาของการเกิด
ทารกคนที่ i เกิดในครอบครัว A_i และทารกจะเป็นชายถ้า B_i เป็น M และเป็นหญิงถ้าเป็น F
ตรวจสอบว่าทารก M คนใดได้รับชื่อทาโร่หรือไม่

อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N M
A_1 B_1
\vdots
A_M B_M

เอาต์พุต

พิมพ์ M บรรทัด
บรรทัดที่ i (1\leq i \leq M) ควรประกอบด้วยคำว่าใช่ถ้าชื่อที่ให้กับทารกคนที่ i คือทาโร่ และไม่มีในกรณีอื่น

ข้อจำกัด

- 1\leq N,M\leq 100
- 1\leq A_i\leq N
- B_i คือ M หรือ F
- ตัวเลขทั้งหมดในอินพุตเป็นจำนวนเต็ม

ตัวอย่างอินพุต 1

2 4
1 M
1 M
2 F
2 M

ตัวอย่างเอาต์พุต 1

Yes
No
No
Yes

ทารกคนแรกเป็นลูกชายที่เกิดก่อนในครอบครัว 1 ดังนั้นจึงมีชื่อว่าทาโร่
ทารกคนที่สองไม่ใช่ลูกชายที่เกิดก่อนในครอบครัว 1 ดังนั้นจึงไม่ได้รับการตั้งชื่อว่าทาโร่
ทารกคนที่สามเป็นผู้หญิง ดังนั้นจึงไม่ได้รับการตั้งชื่อว่าทาโร่
ทารกคนที่สี่เป็นลูกชายที่เกิดก่อนในครอบครัว 2 ดังนั้นจึงได้รับการตั้งชื่อว่าทาโร่ โปรดทราบว่าทารกคนที่สามก็เกิดในครอบครัว 2 เช่นกัน แต่เป็นลูกชายที่เกิดก่อนในครอบครัว 2 ที่มีชื่อว่าทาโร่

ตัวอย่างอินพุต 2

4 7
2 M
3 M
1 F
4 F
4 F
1 F
2 M

ตัวอย่างเอาต์พุต 2

Yes
Yes
No
No
No
No
No

ในราชอาณาจักร AtCoder ลูกชายคนโตจะได้รับชื่อตัวโระเสมอ ไม่มีใครอื่นที่ได้รับชื่อตัวโระ
ลูกชายคนโตคือเด็กชายที่เกิดก่อนในแต่ละครอบครัว
มีครอบครัว N ครอบครัวในราชอาณาจักร และมีเด็กทารกเกิด M คน ก่อนที่เด็กทารก M คนจะเกิด ไม่มีครอบครัว N ครอบครัวไหนเคยมีลูกมาก่อน
ข้อมูลเกี่ยวกับเด็กทารกให้ในลำดับตามวันเกิด
เด็กทารกคนที่ i-th เกิดในครอบครัว A_i และเป็นชายถ้า B_i คือ M และเป็นหญิงถ้าเป็น F
จงกำหนดว่าชื่อที่ให้แก่เด็กทารกแต่ละคนคือชื่อตัวโระหรือไม่

Input

รับข้อมูลจาก Standard Input ในรูปแบบต่อไปนี้:
N M
A_1 B_1
\vdots
A_M B_M

Output

พิมพ์ M บรรทัด
บรรทัดที่ i-th (1\leq i \leq M) ควรประกอบด้วย Yes หากชื่อที่ให้กับเด็กทารกคนที่ i-th คือตัวโระ และ No หากไม่ใช่

Constraints

- 1\leq N,M\leq 100
- 1\leq A_i\leq N
- B_i คือ M หรือ F
- ตัวเลขทั้งหมดใน input เป็นจำนวนเต็ม

ตัวอย่าง Input 1

2 4
1 M
1 M
2 F
2 M

ตัวอย่าง Output 1

Yes
No
No
Yes

เด็กคนแรกคือเด็กชายที่เกิดก่อนในครอบครัวที่ 1 ดังนั้นเขาได้รับชื่อตัวโระ
เด็กคนที่สองไม่ใช่เด็กชายที่เกิดก่อนในครอบครัวที่ 1 ดังนั้นเขาไม่ได้ชื่อตัวโระ
เด็กคนที่สามเป็นหญิง ดังนั้นเธอไม่ได้ชื่อตัวโระ
เด็กคนที่สี่คือเด็กชายที่เกิดก่อนในครอบครัวที่ 2 ดังนั้นเขาได้รับชื่อตัวโระ ทั้งนี้เด็กคนที่สามเกิดในครอบครัวที่ 2 เช่นกัน แต่เป็นเด็กชายที่เกิดก่อนที่จะได้รับชื่อตัวโระ

ตัวอย่าง Input 2

4 7
2 M
3 M
1 F
4 F
4 F
1 F
2 M

ตัวอย่าง Output 2

Yes
Yes
No
No
No
No
No


มีหมู่บ้าน N แห่งบนเส้นจำนวน หมู่บ้านที่ i ตั้งอยู่ที่พิกัด X_i และมีชาวบ้าน P_i
ตอบคำถาม Q ข้อ คำถามที่ i อยู่ในรูปแบบต่อไปนี้:

- กำหนดจำนวนเต็ม L_i และ R_i หาจำนวนชาวบ้านทั้งหมดที่อาศัยอยู่ในหมู่บ้านที่อยู่ระหว่างพิกัด L_i และ R_i รวม

อินพุต

อินพุตกำหนดจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N
X_1 \ldots X_N
P_1 \ldots P_N
Q
L_1 R_1
\vdots
L_Q R_Q

เอาต์พุต

พิมพ์ Q บรรทัด
บรรทัดที่ i (1\leq i \leq Q) ควรมีคำตอบสำหรับคำถามที่ i
ข้อจำกัด

- 1\leq N,Q\leq 2\times 10^5
- -10^9\leq X_1 < X_2 < \ldots < X_N \leq 10^9
- 1\leq P_i\leq 10^9
- -10^9\leq L_i \leq R_i \leq 10^9
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม

ตัวอย่างอินพุต 1

4
1 3 5 7
1 2 3 4
4
1 1
2 6
0 10
2 2

ตัวอย่างผลลัพธ์ 1

1
5
10
0

พิจารณาแบบสอบถามแรก หมู่บ้านระหว่างพิกัด 1 และ 1 คือหมู่บ้านที่พิกัด 1 โดยมีชาวบ้าน 1 คน ดังนั้น คำตอบคือ 1
พิจารณาแบบสอบถามที่สอง หมู่บ้านระหว่างพิกัด 2 และ 6 คือหมู่บ้านที่พิกัด 3 และ 5 โดยมีชาวบ้าน 2 และ 3 คนตามลำดับ ดังนั้นคำตอบคือ 2+3=5

ตัวอย่างอินพุต 2

7
-10 -5 -3 -1 0 1 4
2 5 6 5 2 1 7
8
-7 7
-1 5
-10 -4
-8 10
-5 0
-10 5
-8 7
-8 -3

ตัวอย่างเอาต์พุต 2

26
15
7
26
18
28
26
11

มีหมู่บ้าน N ในบรรทัดตัวเลข หมู่บ้านที่ i-th ตั้งอยู่ที่พิกัด X_i และมีชาวบ้าน P_i
ตอบคำถาม Q แบบสอบถาม i-th อยู่ในรูปแบบต่อไปนี้:

- ให้จำนวนเต็ม L_i และ R_i ให้ค้นหาจำนวนชาวบ้านทั้งหมดที่อาศัยอยู่ในหมู่บ้านที่อยู่ระหว่างพิกัด L_i และ R_i รวม

ป้อนข้อมูล

อินพุตได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N
X_1 \ldots X_N
P_1 \ldots P_N
Q
L_1 R_1
\vdots
L_Q R_Q

เอาท์พุท

พิมพ์บรรทัด Q
บรรทัด i-th (1 \ leq i \ leq Q) ควรมีคำตอบของแบบสอบถาม i-th

ข้อ จำกัด

- 1\leq N,Q\leq 2\times 10^5
- -10^9\leq X_1 < X_2 < \ldots < X_N \leq 10^9
- 1\leq P_i\leq 10^9
- -10^9\leq L_i \leq R_i \leq 10^9
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม

อินพุตตัวอย่าง 1

4
1 3 5 7
1 2 3 4
4
1 1
2 6
0 10
2 2

ตัวอย่างเอาท์พุท 1

1
5
10
0

พิจารณาคำถามแรก หมู่บ้านระหว่างพิกัด 1 และ 1 คือหมู่บ้านที่พิกัด 1 กับ 1 ชาวบ้าน ดังนั้นคำตอบคือ 1
พิจารณาคำถามที่สอง หมู่บ้านระหว่างพิกัด 2 และ 6 เป็นหมู่บ้านที่พิกัด 3 และ 5 โดยมีชาวบ้าน 2 และ 3 คนตามลำดับ ดังนั้นคำตอบคือ 2+3 = 5

อินพุตตัวอย่าง 2

7
-10 -5 -3 -1 0 1 4
2 5 6 5 2 1 7
8
-7 7
-1 5
-10 -4
-8 10
-5 0
-10 5
-8 7
-8 -3

ตัวอย่างเอาท์พุท 2

26
15
7
26
18
28
26
11

มีหมู่บ้าน N แห่งบนเส้นจำนวน โดยหมู่บ้านที่ i-th ตั้งอยู่ที่พิกัด X_i และมีชาวหมู่บ้าน P_i  คน
ตอบคำถาม Q ข้อ คำถามที่ i-th อยู่ในรูปแบบดังต่อไปนี้:

- ให้จำนวนเต็ม L_i และ R_i ค้นหาจำนวนชาวบ้านทั้งหมดที่อาศัยอยู่ในหมู่บ้านที่ตั้งอยู่ระหว่างพิกัด L_i และ R_i รวมถึงพิกัดนี้ด้วย

Input

อินพุตจะได้รับจาก Standard Input ในรูปแบบดังนี้:
N
\(X_1 \ldots X_N\)
\(P_1 \ldots P_N\)
Q
\(L_1 R_1\)
\vdots
\(L_Q R_Q\)

Output

แสดง Q บรรทัด
บรรทัดที่ i-th (1\leq i \leq Q) ควรมีคำตอบของคำถามที่ i-th

เงื่อนไข

- 1\leq N,Q\leq 2\times 10^5
- -10^9\leq X_1 < X_2 < \ldots < X_N \leq 10^9
- 1\leq P_i\leq 10^9
- -10^9\leq L_i \leq R_i \leq 10^9
- ค่าทั้งหมดในอินพุตเป็นจำนวนเต็ม

ตัวอย่างInput 1

4
1 3 5 7
1 2 3 4
4
1 1
2 6
0 10
2 2

ตัวอย่างOutput 1

1
5
10
0

พิจารณาข้อแรก หมู่บ้านระหว่างพิกัด 1 และ 1 คือหมู่บ้านที่พิกัด 1 มีจำนวนชาวบ้าน 1 คน ดังนั้นคำตอบคือ 1
พิจารณาข้อที่สอง หมู่บ้านระหว่างพิกัด 2 และ 6 คือหมู่บ้านที่พิกัด 3 และ 5 มีจำนวนชาวบ้าน 2 และ 3 คนตามลำดับ ดังนั้นคำตอบคือ 2+3=5

ตัวอย่างInput 2

7
-10 -5 -3 -1 0 1 4
2 5 6 5 2 1 7
8
-7 7
-1 5
-10 -4
-8 10
-5 0
-10 5
-8 7
-8 -3

ตัวอย่างOutput 2

26
15
7
26
18
28
26
11


คุณได้รับการจัดลำดับ P = (P_1, P_2, \ldots, P_N) และ A = (A_1, A_2, \ldots, A_N) ของ (1,2,\ldots,N)
คุณสามารถดำเนินการต่อไปนี้ได้หลายครั้งเท่าที่ต้องการ อาจเป็นศูนย์ก็ได้:

- แทนที่ A_i ด้วย A_{P_i} พร้อมกันสำหรับ i=1,2,\ldots,N ทั้งหมด

พิมพ์ A ที่เล็กที่สุดในพจนานุกรมที่หาได้
ลำดับในพจนานุกรมคืออะไร? สำหรับลำดับความยาว N, A = (A_1, A_2, \ldots, A_N) และ B = (B_1, B_2, \ldots, B_N) A จะเล็กกว่า B ตามพจนานุกรมก็ต่อเมื่อ:

- มีจำนวนเต็ม i\ (1\leq i\leq N) ที่ทำให้ A_i < B_i และ A_j = B_j สำหรับ 1\leq j < i ทั้งหมด

อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N
P_1 P_2 \ldots P_N
A_1 A_2 \ldots A_N

เอาต์พุต

ให้ (A_1, A_2, \ldots, A_N) เป็น A ที่เล็กที่สุดในพจนานุกรมที่หาได้ พิมพ์ A_1, A_2, \ldots, A_N ตามลำดับนี้ คั่นด้วยช่องว่าง ในหนึ่งบรรทัด

ข้อจำกัด

- 1\leq N\leq2\times10^5
- 1\leq P_i\leq N\ (1\leq i\leq N)
- P_i\neq P_j\ (1\leq i<j\leq N)
- 1\leq A_i\leq N\ (1\leq i\leq N)
- A_i\neq A_j\ (1\leq i<j\leq N)
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม

ตัวอย่างอินพุต 1

6
3 1 5 6 2 4
4 3 1 6 2 5

ตัวอย่างเอาต์พุต 1

1 4 2 5 3 6

ในตอนแรก A = (4, 3, 1, 6, 2, 5)
การทำซ้ำการดำเนินการจะให้ผลลัพธ์ดังต่อไปนี้

- A = (1, 4, 2, 5, 3, 6)
- A = (2, 1, 3, 6, 4, 5)
- A = (3, 2, 4, 5, 1, 6)
- A = (4, 3, 1, 6, 2, 5)

หลังจากนั้น A จะกลับสู่สถานะเดิมทุกๆ สี่ครั้ง
ดังนั้น ให้พิมพ์ค่าที่เล็กที่สุดในพจนานุกรม ซึ่งก็คือ 1 4 2 5 3 6

ตัวอย่างอินพุต 2

8
3 5 8 7 2 6 1 4
1 2 3 4 5 6 7 8

ตัวอย่างเอาต์พุต 2

1 2 3 4 5 6 7 8

คุณสามารถเลือกที่จะไม่ดำเนินการใดๆ ก็ได้

ตัวอย่างอินพุต 3

26
24 14 4 20 15 19 16 11 23 22 12 18 21 3 6 8 26 2 25 7 13 1 5 9 17 10
15 3 10 1 13 19 22 24 20 4 14 23 7 26 25 18 11 6 9 12 2 21 5 16 8 17

ตัวอย่างเอาต์พุต 3

4 1 22 18 20 13 14 6 15 11 3 26 2 12 5 23 9 10 25 24 7 17 16 21 19 8

คุณได้รับการจัดลำดับ P = (P_1, P_2, \ldots, P_N) และ A = (A_1, A_2, \ldots, A_N) ของ (1,2,\ldots,N)
คุณสามารถดำเนินการต่อไปนี้ได้หลายครั้งเท่าที่ต้องการ อาจเป็นศูนย์ก็ได้:

- แทนที่ A_i ด้วย A_{P_i} พร้อมกันสำหรับ i=1,2,\ldots,N ทั้งหมด

พิมพ์ A ที่เล็กที่สุดในเชิงพจนานุกรมที่หาได้
ลำดับในเชิงพจนานุกรมคืออะไร
สำหรับลำดับความยาว N, A = (A_1, A_2, \ldots, A_N) และ B = (B_1, B_2, \ldots, B_N) A จะเล็กกว่า B ในเชิงพจนานุกรมก็ต่อเมื่อ:

- มีจำนวนเต็ม i\ (1\leq i\leq N) ที่ทำให้ A_i < B_i และ A_j = B_j สำหรับ 1\leq j < i ทั้งหมด

อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N
P_1 P_2 \ldots P_N
A_1 A_2 \ldots A_N

เอาต์พุต

ให้ (A_1, A_2, \ldots, A_N) เป็น A ที่เล็กที่สุดในพจนานุกรมที่หาได้ พิมพ์ A_1, A_2, \ldots, A_N ตามลำดับนี้ คั่นด้วยช่องว่าง ในหนึ่งบรรทัด

ข้อจำกัด

- 1\leq N\leq2\times10^5
- 1\leq P_i\leq N\ (1\leq i\leq N)
- P_i\neq P_j\ (1\leq i<j\leq N)
- 1\leq A_i\leq N\ (1\leq i\leq N)
- A_i\neq A_j\ (1\leq i<j\leq N)
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม

ตัวอย่างอินพุต 1

6
3 1 5 6 2 4
4 3 1 6 2 5

ตัวอย่างเอาต์พุต 1

1 4 2 5 3 6

ในตอนแรก A = (4, 3, 1, 6, 2, 5)
การทำซ้ำการดำเนินการจะให้ผลลัพธ์ดังต่อไปนี้

- A = (1, 4, 2, 5, 3, 6)
- A = (2, 1, 3, 6, 4, 5)
- A = (3, 2, 4, 5, 1, 6)
- A = (4, 3, 1, 6, 2, 5)

หลังจากนั้น A จะกลับสู่สถานะเดิมทุกๆ สี่ครั้ง
ดังนั้น ให้พิมพ์ค่าที่เล็กที่สุดในพจนานุกรม ซึ่งก็คือ 1 4 2 5 3 6

ตัวอย่างอินพุต 2

8
3 5 8 7 2 6 1 4
1 2 3 4 5 6 7 8

ตัวอย่างเอาต์พุต 2

1 2 3 4 5 6 7 8

คุณสามารถเลือกที่จะไม่ดำเนินการใดๆ ก็ได้

ตัวอย่างอินพุต 3

26
24 14 4 20 15 19 16 11 23 22 12 18 21 3 6 8 26 2 25 7 13 1 5 9 17 10
15 3 10 1 13 19 22 24 20 4 14 23 7 26 25 18 11 6 9 12 2 21 5 16 8 17

ตัวอย่างเอาต์พุต 3

4 1 22 18 20 13 14 6 15 11 3 26 2 12 5 23 9 10 25 24 7 17 16 21 19 8

คุณจะได้รับการเรียงสับเปลี่ยน P = (P_1, P_2, \ldots, P_N) และ A = (A_1, A_2, \ldots, A_N) ของ (1,2, \ ldots, N)
คุณสามารถดำเนินการต่อไปนี้ได้หลายครั้ง หรือไม่ทำเลยก็ได้:

- แทนที่ A_i ด้วย A_ {P_i} พร้อมกันสำหรับทั้งหมด i = 1,2, \ ldots, N

พิมพ์ลำดับที่เรียงตามพจนานุกรมเล็กที่สุดที่สามารถรับได้
คำสั่งพจนานุกรมคืออะไร?
 สำหรับลำดับความยาว N, A = (A_1, A_2, \ldots, A_N) และ B = (B_1, B_2, \ldots, B_N), A มีขนาดเล็กกว่า B ถ้า: ถ้า:

- มีจำนวนเต็ม i \ (1 \ leq i \ leq N) เช่นนั้น A_i <B_i และ A_j = B_j สำหรับทั้งหมด 1 \ leq j <i

ป้อนข้อมูล

อินพุตได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N
P_1 P_2 \ldots P_N
A_1 A_2 \ldots A_N

เอาท์พุท

ปล่อยให้ (A_1, A_2, \ldots, A_N) เป็นลำดับที่เรียงตามพจนานุกรมเล็กที่สุดที่สามารถรับได้ พิมพ์ A_1, A_2, \ldots, A_N  ในลำดับนี้คั่นด้วยช่องว่างในหนึ่งบรรทัด

ข้อ จำกัด

- 1\leq N\leq2\times10^5
- 1\leq P_i\leq N\ (1\leq i\leq N)
- P_i\neq P_j\ (1\leq i<j\leq N)
- 1\leq A_i\leq N\ (1\leq i\leq N)
- A_i\neq A_j\ (1\leq i<j\leq N)
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม

อินพุตตัวอย่าง 1

6
3 1 5 6 2 4
4 3 1 6 2 5

ตัวอย่างเอาท์พุท 1

1 4 2 5 3 6

เริ่มแรก, A = (4, 3, 1, 6, 2, 5).
การทำซ้ำการดำเนินการให้ผลต่อไปนี้

- A = (1, 4, 2, 5, 3, 6)
- A = (2, 1, 3, 6, 4, 5)
- A = (3, 2, 4, 5, 1, 6)
- A = (4, 3, 1, 6, 2, 5)

หลังจากนี้ A จะเปลี่ยนกลับไปสู่สถานะเดิมทุกการดำเนินการทุกสี่การดำเนินการ
ดังนั้นจึงพิมพ์ลำดับที่เรียงตามพจนานุกรมเล็กที่สุดในหมู่สิ่งเหล่านี้ซึ่งคือ 1 4 2 5 3 6

อินพุตตัวอย่าง 2

8
3 5 8 7 2 6 1 4
1 2 3 4 5 6 7 8

ตัวอย่างเอาท์พุท 2

1 2 3 4 5 6 7 8

คุณสามารถเลือกที่จะไม่ดำเนินการ

อินพุตตัวอย่าง 3

26
24 14 4 20 15 19 16 11 23 22 12 18 21 3 6 8 26 2 25 7 13 1 5 9 17 10
15 3 10 1 13 19 22 24 20 4 14 23 7 26 25 18 11 6 9 12 2 21 5 16 8 17

ตัวอย่างเอาท์พุท 3

4 1 22 18 20 13 14 6 15 11 3 26 2 12 5 23 9 10 25 24 7 17 16 21 19 8


มีถนนทอดยาวไปทางทิศตะวันออกและทิศตะวันตก และมีผู้คน N คนอยู่บนถนน
ถนนทอดยาวไปทางทิศตะวันออกและทิศตะวันตกอย่างไม่มีที่สิ้นสุดจากจุดที่เรียกว่าจุดเริ่มต้น
บุคคลที่ i (1\leq i\leq N) อยู่ที่ตำแหน่ง X_i เมตรทางทิศตะวันออกจากจุดเริ่มต้นในตอนแรก
บุคคลเหล่านี้สามารถเคลื่อนที่ไปตามถนนทางทิศตะวันออกหรือตะวันตกได้
กล่าวคือ บุคคลเหล่านี้สามารถเคลื่อนที่ตามนี้กี่ครั้งก็ได้

- เลือกบุคคลหนึ่งคน หากไม่มีบุคคลอื่นอยู่ที่จุดหมายปลายทาง ให้ย้ายบุคคลที่เลือกไปทางทิศตะวันออกหรือตะวันตก 1 เมตร

บุคคลเหล่านี้มีงานทั้งหมด Q งาน และงานที่ i (1\leq i\leq Q) มีดังนี้

- บุคคลที่ T_i มาถึงพิกัด G_i

หาจำนวนการเคลื่อนไหวทั้งหมดขั้นต่ำที่จำเป็นเพื่อทำภารกิจทั้งหมด Q งานให้สำเร็จตามลำดับ

อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N
X_1 X_2 \ldots X_N
Q
T_1 G_1
T_2 G_2
\vdots
T_Q G_Q

เอาต์พุต

พิมพ์คำตอบ

ข้อจำกัด

- 1\leq N\leq2\times10^5
- 0\leq X_1 < X_2 < \dotsb < X_N
\leq10^8
- 1\leq Q\leq2\times10^5
- 1\leq T_i\leq N\ (1\leq i\leq Q)
- 0\leq G_i\leq10^8\ (1\leq i\leq Q)
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม

ตัวอย่างอินพุต 1

5
10 20 30 40 50
4
3 45
4 20
1 35
2 60

ตัวอย่างเอาต์พุต 1

239

ลำดับการเคลื่อนไหวที่เหมาะสมสำหรับบุคคลมีดังนี้ (ตำแหน่งของบุคคลไม่จำเป็นต้องวาดตามมาตราส่วน)

สำหรับแต่ละงาน บุคคลจะเคลื่อนไหวดังต่อไปนี้

- บุคคลที่ 4 เดินไปทางทิศตะวันออก 6 ก้าว และบุคคลที่ 3 เดินไปทางทิศตะวันออก 15 ก้าว
- บุคคลที่ 2 เดินไปทางทิศตะวันตก 2 ก้าว บุคคลที่ 3 เดินไปทางทิศตะวันตก 26 ก้าว และบุคคลที่ 4 เดินไปทางทิศตะวันตก 26 ก้าว
- บุคคลที่ 4 เดินไปทางทิศตะวันออก 18 ก้าว บุคคลที่ 3 เดินไปทางทิศตะวันออก 18 ก้าว บุคคลที่ 2 เดินไปทางทิศตะวันออก 18 ก้าว และบุคคลที่ 1 เดินไปทางทิศตะวันออก 25 ก้าว
- คนที่ 5 เดินไปทางทิศตะวันออก 13 ก้าว คนที่ 4 เดินไปทางทิศตะวันออก 24 ก้าว คนที่ 3 เดินไปทางทิศตะวันออก 24 ก้าว และคนที่ 2 เดินไปทางทิศตะวันออก 24 ก้าว

จำนวนก้าวทั้งหมดคือ 21+54+79+85=239 คุณไม่สามารถทำภารกิจทั้งหมดให้เสร็จสิ้นได้หากจำนวนการเคลื่อนที่ทั้งหมดอยู่ที่ 238 หรือต่ำกว่านั้น ดังนั้นให้พิมพ์ 239

ตัวอย่างข้อมูลที่ป้อน 2

8
0 1 2 3 4 5 6 100000000
6
1 100000000
8 0
1 100000000
8 4
1 100000000
5 21006578

ตัวอย่างข้อมูลที่ป้อน 2

4294967297

โปรดทราบว่าบางคนอาจต้องเคลื่อนที่ไปทางทิศตะวันตกของจุดกำเนิดหรือมากกว่า 10^8 เมตรไปทางทิศตะวันออกของจุดกำเนิด
นอกจากนี้ โปรดทราบว่าคำตอบอาจเกิน 2^{32}

ตัวอย่างอินพุต 3

12
1558 3536 3755 3881 4042 4657
5062 7558 7721 8330 8542 9845
8
9 1694
7 3296
12 5299
5 5195
5 5871
1 2491
8 1149
8 2996

ตัวอย่างเอาต์พุต 3

89644

มีถนนที่ทอดยาวไปทางทิศตะวันออกและตะวันตก และ N คนอยู่บนถนน
ถนนทอดยาวไปทางทิศตะวันออกและตะวันตกอย่างไม่มีที่สิ้นสุดจากจุดที่เรียกว่าต้นกําเนิด
บุคคลที่ i (1\leq i\leq N) ในตอนแรกอยู่ที่ตําแหน่ง X_i เมตรทางตะวันออกจากจุดเริ่มต้น
บุคคลสามารถเคลื่อนย้ายไปตามถนนไปทางทิศตะวันออกหรือทิศตะวันตก
โดยเฉพาะอย่างยิ่งพวกเขาสามารถเคลื่อนไหวต่อไปนี้ได้กี่ครั้ง

- เลือกคนเดียว หากไม่มีบุคคลอื่นอยู่ที่จุดหมายปลายทาง ให้ย้ายบุคคลที่เลือกไปทางทิศตะวันออกหรือตะวันตก 1 เมตร

พวกเขามีงาน Q ทั้งหมด และงานที่ i (1\leq i\leq Q) มีดังนี้

- คนที่ T_i มาถึงพิกัด G_i

ค้นหาจํานวนการเคลื่อนไหวขั้นต่ําทั้งหมดที่จําเป็นในภารกิจ Q ทั้งหมดตามลําดับ

อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N
X_1 X_2 \ldots X_N
Q
T_1 G_1
T_2 G_2
\vdots
T_Q G_Q

ผลิตภัณฑ์

พิมพ์คําตอบ

ข้อจํากัด

- 1\leq N\leq2\times10^5
- 0\leq X_1 < X_2 < \dotsb < X_N \leq10^8
- 1\leq Q\leq2\times10^5
- 1\leq T_i\leq N\ (1\leq i\leq Q)
- 0\leq G_i\leq10^8\ (1\leq i\leq Q)
- ค่าอินพุตทั้งหมดเป็นจํานวนเต็ม

ตัวอย่างข้อมูลนำเข้า 1

5
10 20 30 40 50
4
3 45
4 20
1 35
2 60

ตัวอย่างเอาต์พุต 1

239

ลําดับการเคลื่อนไหวที่เหมาะสมที่สุดสําหรับบุคคลมีดังนี้ (ตําแหน่งของบุคคลไม่จําเป็นต้องถูกวาดให้มาตราส่วน):

สําหรับแต่ละงานบุคคลจะเคลื่อนไหวดังนี้

- คนที่ 4 เคลื่อนไปทางทิศตะวันออก 6 ก้าว และคนที่ 3 เคลื่อนไปทางทิศตะวันออก 15 ก้าว
- คนที่ 2 เคลื่อนไปทางทิศตะวันตก 2 ก้าว คนที่ 3 เคลื่อนไปทางทิศตะวันตก 26 ก้าว และคนที่ 4 เคลื่อนไปทางทิศตะวันตก 26 ก้าว
- คนที่ 4 เคลื่อนไปทางทิศตะวันออก 18 ก้าว คนที่ 3 เคลื่อนไปทางทิศตะวันออก 18 ก้าว คนที่ 2 เคลื่อนไปทางทิศตะวันออก 18 ก้าว และคนที่ 1 เคลื่อนไปทางทิศตะวันออก 25 ก้าว
- คนที่ 5 เคลื่อนไปทางทิศตะวันออก 13 ก้าว คนที่ 4 เคลื่อนไปทางทิศตะวันออก 24 ก้าว คนที่ 3 เคลื่อนไปทางทิศตะวันออก 24 ก้าว และคนที่ 2 เคลื่อนไปทางทิศตะวันออก 24 ก้าว

จํานวนการเคลื่อนไหวทั้งหมดคือ 21+54+79+85=239
คุณไม่สามารถทํางานทั้งหมดให้เสร็จด้วยจํานวนการเคลื่อนไหวทั้งหมด 238 หรือน้อยกว่า ดังนั้นให้พิมพ์ 239

ตัวอย่างข้อมูลนำเข้า 2

8
0 1 2 3 4 5 6 100000000
6
1 100000000
8 0
1 100000000
8 4
1 100000000
5 21006578

ตัวอย่างเอาต์พุต 2

4294967297

โปรดทราบว่าบางคนอาจต้องย้ายไปทางทิศตะวันตกของต้นทางหรือมากกว่า 10^8 เมตรไปทางทิศตะวันออก
นอกจากนี้ โปรดทราบว่าคําตอบอาจเกิน 2^{32}

ตัวอย่างข้อมูลนำเข้า 3

12
1558 3536 3755 3881 4042 4657 5062 7558 7721 8330 8542 9845
8
9 1694
7 3296
12 5299
5 5195
5 5871
1 2491
8 1149
8 2996

ตัวอย่างเอาต์พุต 3

89644


คุณจะได้รับกราฟ G และ H ที่ไม่มีทิศทางแบบง่าย โดยแต่ละกราฟมีจุดยอด N จุด ได้แก่ จุดยอด 1, 2, \ldots, N
กราฟ G มีขอบ M_G และขอบที่ i (1\leq i\leq M_G) เชื่อมจุดยอด u_i และ v_i
กราฟ H มีขอบ M_H และขอบที่ i (1\leq i\leq M_H) เชื่อมจุดยอด a_i และ b_i
คุณสามารถดำเนินการต่อไปนี้กับกราฟ H ได้หลายครั้งเท่าที่ต้องการ อาจเป็นศูนย์ก็ได้

- เลือกคู่จำนวนเต็ม (i,j) ที่สอดคล้องกับ 1\leq i<j\leq N จ่าย A_{i,j} เยน และถ้าไม่มีขอบระหว่างจุดยอด i และ j ใน H ให้บวกหนึ่ง ถ้ามี ให้ลบออก

หาต้นทุนรวมขั้นต่ำที่จำเป็นในการทำให้ G และ H เป็นไอโซมอร์ฟิก
กราฟที่ไม่มีทิศทางแบบง่ายคืออะไร กราฟไม่มีทิศทางแบบง่ายคือกราฟที่ไม่มีลูปหรือขอบหลายขอบ โดยที่ขอบไม่มีทิศทาง

การที่กราฟเป็นไอโซมอร์ฟิกหมายความว่าอย่างไร กราฟ G และ H สองกราฟที่มีจุดยอด N จุดจะเป็นไอโซมอร์ฟิกก็ต่อเมื่อมีการเรียงสับเปลี่ยน (P_1,P_2,\ldots,P_N) ของ (1,2,\ldots,N) เกิดขึ้น ซึ่งสำหรับ 1\leq i\lt j\leq N ทั้งหมด:

- มีขอบระหว่างจุดยอด i และ j ใน G ก็ต่อเมื่อมีขอบระหว่างจุดยอด P_i และ P_j ใน H

อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N
M _ G
u _ 1 v _ 1
u _ 2 v _ 2
\vdots
u _ {M _ G} v _ {M _ G}
M _ H
a _ 1 b _ 1
a _ 2 b _ 2
\vdots
a _ {M _ H} b _ {M _ H}
A _ {1,2} A _ {1,3} \ldots A _ {1,N}
A _ {2,3} \ldots A _ {2,N}
\vdots
A _ {N-1,N}

ผลลัพธ์

พิมพ์คำตอบ
ข้อจำกัด

- 1\leq N\leq8
- 0\leq M _ G\leq\dfrac{N(N-1)}2
- 0\leq M _ H\leq\dfrac{N(N-1)}2
- 1\leq u _ i\lt v _ i\leq N\ (1\leq i\leq M _ G)
- (u _ i,v _ i)\neq(u _ j,v _ j)\ (1\leq i\lt j\leq M _ G)
- 1\leq a _ i\lt b _ i\leq N\ (1\leq i\leq M _ H)
- (a _ i,b _ i)\neq(a _ j,b _ j)\ (1\leq i\lt j\leq M _ H)
- 1\leq A _ {i,j}\leq 10 ^ 6\ (1\leq i\lt j\leq N)
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม

ตัวอย่างอินพุต 1

5
4
1 2
2 3
3 4
4 5
4
1 2
1 3
1 4
1 5
3 1 4 1
5 9 2
6 5
3

ตัวอย่างเอาต์พุต 1

9

กราฟที่กำหนดเป็นดังนี้:

ตัวอย่างเช่น คุณสามารถดำเนินการสี่อย่างต่อไปนี้กับ H เพื่อทำให้เป็นไอโซมอร์ฟิกกับ G โดยมีค่าใช้จ่าย 9 เยน

- เลือก (i,j)=(1,3) มีขอบระหว่างจุดยอด 1 และ 3 ใน H ดังนั้นต้องจ่ายเงิน 1 เยนเพื่อลบขอบนั้นออก
- เลือก (i,j)=(2,5) ไม่มีขอบระหว่างจุดยอด 2 และ 5 ใน H ดังนั้นต้องจ่ายเงิน 2 เยนเพื่อบวกขอบนั้นเข้าไป - เลือก (i,j)=(1,5) มีขอบระหว่างจุดยอด 1 และ 5 ใน H ดังนั้นจ่าย 1 เยนเพื่อลบมันออก
- เลือก (i,j)=(3,5) ไม่มีขอบระหว่างจุดยอด 3 และ 5 ใน H ดังนั้นจ่าย 5 เยนเพื่อเพิ่มมันเข้าไป
หลังจากการดำเนินการเหล่านี้ H จะกลายเป็น:

คุณไม่สามารถทำให้ G และ H มีรูปร่างแบบไอโซมอร์ฟิกได้ในราคาต่ำกว่า 9 เยน ดังนั้นให้พิมพ์ 9

ตัวอย่างอินพุต 2

5
3
1 2
2 3
3 4
4
1 2
2 3
3 4
4 5
9 1 1 1
1 1 1
1 1
9

ตัวอย่างเอาต์พุต 2

3

ตัวอย่างเช่น การดำเนินการ (i,j)=(2,3),(2,4),(3,4) กับ H จะทำให้ H มีรูปร่างแบบไอโซมอร์ฟิกกับ G

ตัวอย่างอินพุต 3

5
3
1 2
2 3
3 4
4
1 2
2 3
3 4
4 5
5 4 4 4
4 4 4
4 4 4
5

ตัวอย่างเอาต์พุต 3

5

ตัวอย่างเช่น การดำเนินการ (i,j)=(4,5) หนึ่งครั้งจะ ทำให้ G และ H เป็นไอโซมอร์ฟิก

ตัวอย่างอินพุต 4

2
0
0
371

ตัวอย่างเอาต์พุต 4

0

โปรดทราบว่า G และ H อาจไม่มีขอบ
นอกจากนี้ ยังเป็นไปได้ที่ไม่จำเป็นต้องดำเนินการใดๆ
ตัวอย่างอินพุต 5

8
13
1 8
5 7
4 6
1 5
7 8
1 6
1 2
5 8
2 6
5 6
6 7
3 7
4 8
15
3 5
1 7
4 6
3 8
7 8
1 2
5 6
1 6
1 5
1 4
2 8
2 6
2 4
4 7
1 3
7483 1694 5868 3296 9723 5299 4326
5195 4088 5871 1384 2491 6562
1149 6326 2996 9845 7557
4041 7720 1554 5060
8329 8541 3530
4652 3874
3748

ตัวอย่างผลลัพธ์ 5

21214

คุณจะได้รับกราฟที่ไม่ได้กำกับแบบง่าย ๆ G และ H แต่ละอันมีจุดยอด: จุดยอด 1, 2, \ ldots, N.
กราฟ G มีขอบ M_G และขอบ i-th (1 \ leq i \ leq M_G) เชื่อมต่อจุดยอด u_i และ v_i
กราฟ H มีขอบ M_H และขอบ i-th (1 \ leq i \ leq M_H) เชื่อมต่อจุดยอด a_i และ b_i
คุณสามารถดำเนินการต่อไปนี้บนกราฟ H ได้หลายครั้ง หรืออาจไม่ดำเนินการเลย

- เลือกจำนวนเต็มคู่หนึ่ง (i, j) ที่น่าพอใจ 1 \ leq i <j \ leq N. จ่าย A_ {i, j} เยนและถ้าไม่มีขอบระหว่างจุดยอด i และ j ใน H, เพิ่มหนึ่ง; ถ้ามีให้ลบออก

ค้นหาค่าใช้จ่ายขั้นต่ำทั้งหมดที่จำเป็นในการทำให้ G และ H isomorphic
กราฟที่ไม่ได้กำกับแบบง่ายคืออะไร?
 กราฟที่ไม่ได้กำกับแบบง่าย ๆ คือกราฟที่ไม่มีลูปตัวเองหรือ Multi-Edges ซึ่งขอบไม่มีทิศทาง

กราฟที่จะเป็น isomorphic หมายความว่าอย่างไร?
กราฟสองกราฟ G และ H ที่มี N จุดยอดคือ isomorphic ถ้ามีการเปลี่ยนแปลง (P_1, P_2, \ldots, P_N) ของ (1,2, \ldots, N) สำหรับทั้งหมด 1 \leq i < j \leq N ที่ทำให้ขอบระหว่างจุดยอด i และ j ใน G ตรงกับขอบระหว่างจุดยอด P_i และ P_j ใน H:

- ขอบมีอยู่ระหว่างจุดยอด I และ J ใน g ถ้าและเฉพาะในกรณีที่ขอบอยู่ระหว่างจุดยอด P_i และ P_J ใน H

ป้อนข้อมูล

อินพุตได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N
M _ G
u _ 1 v _ 1
u _ 2 v _ 2
\vdots
u _ {M _ G} v _ {M _ G}
M _ H
a _ 1 b _ 1
a _ 2 b _ 2
\vdots
a _ {M _ H} b _ {M _ H}
A _ {1,2} A _ {1,3} \ldots A _ {1,N}
A _ {2,3} \ldots A _ {2,N}
\vdots
A _ {N-1,N}

เอาท์พุท

พิมพ์คำตอบ

ข้อ จำกัด

- 1\leq N\leq8
- 0\leq M _ G\leq\dfrac{N(N-1)}2
- 0\leq M _ H\leq\dfrac{N(N-1)}2
- 1\leq u _ i\lt v _ i\leq N\ (1\leq i\leq M _ G)
- (u _ i,v _ i)\neq(u _ j,v _ j)\ (1\leq i\lt j\leq M _ G)
- 1\leq a _ i\lt b _ i\leq N\ (1\leq i\leq M _ H)
- (a _ i,b _ i)\neq(a _ j,b _ j)\ (1\leq i\lt j\leq M _ H)
- 1\leq A _ {i,j}\leq 10 ^ 6\ (1\leq i\lt j\leq N)
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม

อินพุตตัวอย่าง 1

5
4
1 2
2 3
3 4
4 5
4
1 2
1 3
1 4
1 5
3 1 4 1
5 9 2
6 5
3

ตัวอย่างเอาท์พุท 1

9

กราฟที่กำหนดมีดังนี้:

ตัวอย่างเช่นคุณสามารถดำเนินการสี่การดำเนินการต่อไปนี้ใน H เพื่อให้ isomorphic กับ G ในราคา 9 เยน

- เลือก (i, j) = (1,3) มีขอบระหว่างจุดยอด 1 และ 3 ใน H ดังนั้นจ่าย 1 เยนเพื่อลบออก
- เลือก (i, j) = (2,5) ไม่มีขอบระหว่างจุดยอด 2 และ 5 ใน H ดังนั้นจ่าย 2 เยนเพื่อเพิ่ม
- เลือก (i, j) = (1,5) มีขอบระหว่างจุดยอด 1 และ 5 ใน H ดังนั้นจ่าย 1 เยนเพื่อลบออก
- เลือก (i, j) = (3,5) ไม่มีขอบระหว่างจุดยอด 3 และ 5 ใน H ดังนั้นจ่าย 5 เยนเพื่อเพิ่ม

หลังจากการดำเนินการเหล่านี้ H กลายเป็น:

คุณไม่สามารถสร้าง G และ H isomorphic ในราคาน้อยกว่า 9 เยนดังนั้นพิมพ์ 9

อินพุตตัวอย่าง 2

5
3
1 2
2 3
3 4
4
1 2
2 3
3 4
4 5
9 1 1 1
1 1 1
1 1
9

ตัวอย่างเอาท์พุท 2

3

ตัวอย่างเช่นการดำเนินการ (i, j) = (2,3), (2,4), (3,4) บน H จะทำให้ isomorphic กับ G.

อินพุตตัวอย่าง 3

5
3
1 2
2 3
3 4
4
1 2
2 3
3 4
4 5
5 4 4 4
4 4 4
4 4
5

ตัวอย่างเอาท์พุท 3

5

ตัวอย่างเช่นการดำเนินการ (i, j) = (4,5) ครั้งหนึ่งจะทำให้ G และ H isomorphic

อินพุตตัวอย่าง 4

2
0
0
371

ตัวอย่างเอาท์พุท 4

0

โปรดทราบว่า G และ H อาจไม่มีขอบ
นอกจากนี้ยังเป็นไปได้ว่าไม่จำเป็นต้องมีการดำเนินการ

อินพุตตัวอย่าง 5

8
13
1 8
5 7
4 6
1 5
7 8
1 6
1 2
5 8
2 6
5 6
6 7
3 7
4 8
15
3 5
1 7
4 6
3 8
7 8
1 2
5 6
1 6
1 5
1 4
2 8
2 6
2 4
4 7
1 3
7483 1694 5868 3296 9723 5299 4326
5195 4088 5871 1384 2491 6562
1149 6326 2996 9845 7557
4041 7720 1554 5060
8329 8541 3530
4652 3874
3748

ตัวอย่างเอาท์พุท 5

21214

คุณจะได้รับกราฟ G และ H ที่ไม่มีทิศทางแบบง่าย โดยแต่ละกราฟมีจุดยอด N จุด ได้แก่ จุดยอด 1, 2, \ldots, N
กราฟ G มีขอบ M_G และขอบที่ i (1\leq i\leq M_G) เชื่อมจุดยอด u_i และ v_i
กราฟ H มีขอบ M_H และขอบที่ i (1\leq i\leq M_H) เชื่อมจุดยอด a_i และ b_i
คุณสามารถดำเนินการต่อไปนี้กับกราฟ H ได้หลายครั้งเท่าที่ต้องการ อาจเป็นศูนย์ก็ได้

- เลือกคู่จำนวนเต็ม (i,j) ที่สอดคล้องกับ 1\leq i<j\leq N จ่าย A_{i,j} เยน และถ้าไม่มีขอบระหว่างจุดยอด i และ j ใน H ให้บวกหนึ่ง ถ้ามี ให้ลบออก

หาต้นทุนรวมขั้นต่ำที่จำเป็นในการทำให้ G และ H เป็นไอโซมอร์ฟิก
กราฟที่ไม่มีทิศทางแบบง่ายคืออะไร กราฟไม่มีทิศทางแบบง่ายคือกราฟที่ไม่มีลูปหรือขอบหลายขอบ โดยที่ขอบไม่มีทิศทาง

การที่กราฟเป็นไอโซมอร์ฟิกหมายความว่าอย่างไร กราฟ G และ H สองกราฟที่มีจุดยอด N จุดจะเป็นไอโซมอร์ฟิกก็ต่อเมื่อมีการเรียงสับเปลี่ยน (P_1,P_2,\ldots,P_N) ของ (1,2,\ldots,N) เกิดขึ้น ซึ่งสำหรับ 1\leq i\lt j\leq N ทั้งหมด:

- มีขอบระหว่างจุดยอด i และ j ใน G ก็ต่อเมื่อมีขอบระหว่างจุดยอด P_i และ P_j ใน H

อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N
M _ G
u _ 1 v _ 1
u _ 2 v _ 2
\vdots
u _ {M _ G} v _ {M _ G}
M _ H
a _ 1 b _ 1
a _ 2 b _ 2
\vdots
a _ {M _ H} b _ {M _ H}
A _ {1,2} A _ {1,3} \ldots A _ {1,N}
A _ {2,3} \ldots A _ {2,N}
\vdots
A _ {N-1,N}

ผลลัพธ์

พิมพ์คำตอบ

ข้อจำกัด

- 1\leq N\leq8
- 0\leq M _ G\leq\dfrac{N(N-1)}2
- 0\leq M _ H\leq\dfrac{N(N-1)}2
- 1\leq u _ i\lt v _ i\leq N\ (1\leq i\leq M _ G)
- (u _ i,v _ i)\neq(u _ j,v _ j)\ (1\leq i\lt j\leq M _ G)
- 1\leq a _ i\lt b _ i\leq N\ (1\leq i\leq M _ H)
- (a _ i,b _ i)\neq(a _ j,b _ j)\ (1\leq i\lt j\leq M _ H)
- 1\leq A _ {i,j}\leq 10 ^ 6\ (1\leq i\lt j\leq N)
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม

ตัวอย่างอินพุต 1

5
4
1 2
2 3
3 4
4 5
4
1 2
1 3
1 4
1 5
3 1 4 1
5 9 2
6 5
3

ตัวอย่างเอาต์พุต 1

9

กราฟที่กำหนดเป็นดังนี้:

ตัวอย่างเช่น คุณสามารถดำเนินการสี่อย่างต่อไปนี้กับ H เพื่อทำให้เป็นไอโซมอร์ฟิกกับ G โดยมีค่าใช้จ่าย 9 เยน

- เลือก (i,j)=(1,3) มีขอบระหว่างจุดยอด 1 และ 3 ใน H ดังนั้นต้องจ่ายเงิน 1 เยนเพื่อลบขอบนั้นออก
- เลือก (i,j)=(2,5) ไม่มีขอบระหว่างจุดยอด 2 และ 5 ใน H ดังนั้นต้องจ่ายเงิน 2 เยนเพื่อบวกขอบนั้นเข้าไป
- เลือก (i,j)=(1,5) มีขอบระหว่างจุดยอด 1 และ 5 ใน H ดังนั้นจ่าย 1 เยนเพื่อลบมันออก
- เลือก (i,j)=(3,5) ไม่มีขอบระหว่างจุดยอด 3 และ 5 ใน H ดังนั้นจ่าย 5 เยนเพื่อเพิ่มมันเข้าไป
หลังจากการดำเนินการเหล่านี้ H จะกลายเป็น:

คุณไม่สามารถทำให้ G และ H มีรูปร่างแบบไอโซมอร์ฟิกได้ในราคาต่ำกว่า 9 เยน ดังนั้นให้พิมพ์ 9

ตัวอย่างอินพุต 2

5
3
1 2
2 3
3 4
4
1 2
2 3
3 4
4 5
9 1 1 1
1 1 1
1 1
9

ตัวอย่างเอาต์พุต 2

3

ตัวอย่างเช่น การดำเนินการ (i,j)=(2,3),(2,4),(3,4) กับ H จะทำให้ H มีรูปร่างแบบไอโซมอร์ฟิกกับ G

ตัวอย่างอินพุต 3
5
3
1 2
2 3
3 4
4
1 2
2 3
3 4
4 5
5 4 4 4
4 4 4
4 4
5

ตัวอย่างเอาต์พุต 3

5

ตัวอย่างเช่น การดำเนินการ (i,j)=(4,5) หนึ่งครั้งจะ ทำให้ G และ H เป็นไอโซมอร์ฟิก

ตัวอย่างอินพุต 4

2
0
0
371

ตัวอย่างเอาต์พุต 4

0

โปรดทราบว่า G และ H อาจไม่มีขอบ
นอกจากนี้ ยังเป็นไปได้ที่ไม่จำเป็นต้องดำเนินการใดๆ
ตัวอย่างอินพุต 5

8
13
1 8
5 7
4 6
1 5
7 8
1 6
1 2
5 8
2 6
5 6
6 7
3 7
4 8
15
3 5
1 7
4 6
3 8
7 8
1 2
5 6
1 6
1 5
1 4
2 8
2 6
2 4
4 7
1 3
7483 1694 5868 3296 9723 5299 4326
5195 4088 5871 1384 2491 6562
1149 6326 2996 9845 7557
4041 7720 1554 5060
8329 8541 3530
4652 3874
3748

ตัวอย่างผลลัพธ์ 5

21214


คุณได้รับลำดับของจำนวนเต็ม A = (A_1, A_2, \ldots, A_N) ที่มีความยาว N
กำหนด f(l, r) เป็น:

- จำนวนค่าที่แตกต่างกันในลำดับย่อย (A_l, A_{l+1}, \ldots, A_r)

ประเมินนิพจน์ต่อไปนี้:

\displaystyle \sum_{i=1}^{N}\sum_{j=i}^N f(i,j).

อินพุต

อินพุตกำหนดจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N
A_1 \ldots A_N

เอาต์พุต

พิมพ์คำตอบ

ข้อจำกัด

- 1\leq N\leq 2\times 10^5
- 1\leq A_i\leq N
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม
ตัวอย่างอินพุต 1

3
1 2 2

ตัวอย่างเอาต์พุต 1

8

พิจารณา f(1,2) ลำดับย่อย (A_1, A_2) = (1,2) มีค่าที่แตกต่างกัน 2
ค่า ดังนั้น f(1,2)=2
พิจารณา f(2,3) ลำดับย่อย (A_2, A_3) = (2,2) มีค่าที่แตกต่างกัน 1
ค่า ดังนั้น f(2,3)=1
ผลรวมของ f คือ 8

ตัวอย่างอินพุต 2

9
5 4 2 2 3 2 4 4 1

ตัวอย่างเอาต์พุต 2

111


มีพี่น้องสามคนชื่อ A, B และ C ความสัมพันธ์ทางอายุระหว่างพวกเขาถูกกําหนดโดยอักขระสามตัว S_{\mathrm{AB}}, S_{\mathrm{AC}}, S_{\mathrm{BC}} ซึ่งมีความหมายดังต่อไปนี้:

- ถ้า S_{\mathrm{AB}} คือ < แสดงว่า A อายุน้อยกว่า B ถ้าเป็น > แสดงว่า A แก่กว่า B
- ถ้า S_{\mathrm{AC}} เป็น < แสดงว่า A อายุน้อยกว่า C ถ้าเป็น > แสดงว่า A มีอายุมากกว่า C
- ถ้า S_{\mathrm{BC}} คือ < แสดงว่า B อายุน้อยกว่า C ถ้าเป็น > B จะแก่กว่า C

ใครคือพี่ชายคนกลาง นั่นคือ คนที่อายุมากที่สุดเป็นอันดับสองในบรรดาสามคน?

อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
S_{\mathrm{AB}} S_{\mathrm{AC}} S_{\mathrm{BC}}

ผลิตภัณฑ์

พิมพ์ชื่อพี่ชายคนกลาง นั่นคือ อายุมากที่สุดเป็นอันดับสองในบรรดาสามคน

ข้อจํากัด

- S_{\mathrm{AB}}, S_{\mathrm{AC}}, S_{\mathrm{BC}} แต่ละตัวคือ < หรือ >
- อินพุตไม่มีความขัดแย้ง นั่นคือมีความสัมพันธ์ด้านอายุที่ตอบสนองความไม่เท่าเทียมกันทั้งหมดอยู่เสมอ

ตัวอย่างข้อมูลนำเข้า 1

< < <

ตัวอย่างเอาต์พุต 1

B

เนื่องจาก A อายุน้อยกว่า B และ B อายุน้อยกว่า C เราจึงสามารถระบุได้ว่า C แก่ที่สุด B อยู่ตรงกลาง และ A อายุน้อยที่สุด ดังนั้นคําตอบคือ B

ตัวอย่างข้อมูลนำเข้า 2
< < >

ตัวอย่างเอาต์พุต 2

C

มีพี่น้องสามคนชื่อ A, B และ C ความสัมพันธ์ของอายุระหว่างพวกเขากำหนดโดยตัวอักษรสามตัวคือ S_{\mathrm{AB}}, S_{\mathrm{AC}}, S_{\mathrm{BC}} ซึ่งมีความหมายดังต่อไปนี้:

- ถ้า S_{\mathrm{AB}} มีค่า < แสดงว่า A อายุน้อยกว่า B ถ้ามีค่า > แสดงว่า A อายุมากกว่า B
- ถ้า S_{\mathrm{AC}} มีค่า < แสดงว่า A อายุน้อยกว่า C ถ้ามีค่า > แสดงว่า A อายุมากกว่า C
- ถ้า S_{\mathrm{BC}} มีค่า < แสดงว่า B อายุน้อยกว่า C ถ้ามีค่า > แสดงว่า B อายุมากกว่า C

ใครเป็นพี่ชายคนกลาง กล่าวคือ พี่ชายคนโตเป็นอันดับสองในสามคน

อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
S_{\mathrm{AB}} S_{\mathrm{AC}} S_{\mathrm{BC}}

เอาต์พุต

พิมพ์ชื่อของพี่ชายคนกลาง นั่นคือ พี่ชายคนโตเป็นอันดับสองจากสามคน

ข้อจำกัด

- S_{\mathrm{AB}}, S_{\mathrm{AC}}, S_{\mathrm{BC}} แต่ละตัวมีค่า < หรือ >
- อินพุตไม่มีข้อขัดแย้ง นั่นคือ ความสัมพันธ์ของอายุที่สอดคล้องกับความไม่เท่าเทียมที่กำหนดไว้ทั้งหมดจะมีอยู่เสมอ

ตัวอย่างอินพุต 1

< < <

ตัวอย่างเอาต์พุต 1

B

เนื่องจาก A อายุน้อยกว่า B และ B อายุน้อยกว่า C เราจึงสามารถกำหนดได้ว่า C อายุมากที่สุด B เป็นคนกลาง และ A อายุน้อยที่สุด ดังนั้นคำตอบคือ B

ตัวอย่างอินพุต 2

< < >

ตัวอย่างเอาต์พุต 2

C


มีกราฟที่ไม่มีทิศทางซึ่งมีจุดยอด N จุดและมีขอบ 0 ขอบ จุดยอดมีหมายเลขตั้งแต่ 1 ถึง N
มีคำสั่ง Q คำสั่งให้ประมวลผลตามลำดับ คำสั่งแต่ละคำสั่งมีหนึ่งในสองประเภทต่อไปนี้:

- ประเภท 1: กำหนดในรูปแบบ 1 u v เพิ่มขอบระหว่างจุดยอด u และ v
- ประเภท 2: กำหนดในรูปแบบ 2 v k พิมพ์หมายเลขจุดยอดที่ใหญ่เป็นอันดับ k จากจุดยอดที่เชื่อมต่อกับจุดยอด v หากมีจุดยอดที่เชื่อมต่อกับ v น้อยกว่า k จุด ให้พิมพ์ -1
อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N Q
\mathrm{query}_1
\mathrm{query}_2
\vdots
\mathrm{query}_Q

ในที่นี้ \mathrm{query}_i คือคิวรีที่ i และจะได้รับในรูปแบบใดรูปแบบหนึ่งต่อไปนี้:
1 u v

2 v k

เอาต์พุต

ให้ q เป็นจำนวนคิวรีประเภท 2 พิมพ์ q บรรทัด
บรรทัดที่ i ควรมีคำตอบของคิวรีประเภท 2 ที่ i

ข้อจำกัด

- 1 \leq N, Q \leq 2 \times 10^5
- ในคิวรีประเภท 1, 1 \leq u < v \leq N
- ในคิวรีประเภท 2, 1 \leq v \leq N, 1 \leq k \leq 10
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม
ตัวอย่างอินพุต 1

4 10
1 1 2
2 1 1
2 1 2
2 1 3
1 1 3
1 2 3
1 3 4
2 1 1
2 1 3
2 1 5

ตัวอย่างเอาต์พุต 1

2
1
-1
4
2
-1

- ในแบบสอบถามแรก จะมีการเพิ่มขอบระหว่างจุดยอด 1 และ 2
- ในแบบสอบถามที่สอง จะมีจุดยอด 2 จุดเชื่อมต่อกับจุดยอด 1: 1 และ 2 ในจำนวนนี้ จุดยอดที่ใหญ่เป็นอันดับ 1 คือ 2 ซึ่งควรได้รับการพิมพ์ออกมา
- ในแบบสอบถามที่สาม จะมีจุดยอด 2 จุดเชื่อมต่อกับจุดยอด 1: 1 และ 2 ในจำนวนนี้ จุดยอดที่ใหญ่เป็นอันดับ 2 คือ 1 ซึ่งควรได้รับการพิมพ์ออกมา - ในแบบสอบถามที่สี่ จุดยอดสองจุดเชื่อมต่อกับจุดยอด 1: 1 และ 2 ซึ่งน้อยกว่า 3 ดังนั้นให้พิมพ์ -1
- ในแบบสอบถามที่ห้า ขอบจะถูกเพิ่มระหว่างจุดยอด 1 และ 3
- ในแบบสอบถามที่หก ขอบจะถูกเพิ่มระหว่างจุดยอด 2 และ 3
- ในแบบสอบถามที่เจ็ด ขอบจะถูกเพิ่มระหว่างจุดยอด 3 และ 4
- ในแบบสอบถามที่แปด จุดยอดสี่จุดเชื่อมต่อกับจุดยอด 1: 1,2,3,4 ในจำนวนนี้ หมายเลขจุดยอดที่ใหญ่เป็นอันดับ 1 คือ 4 ซึ่งควรพิมพ์ออกมา
- ในแบบสอบถามที่เก้า จุดยอดสี่จุดเชื่อมต่อกับจุดยอด 1: 1,2,3,4 ในจำนวนนี้ หมายเลขจุดยอดที่ใหญ่เป็นอันดับ 3 คือ 2 ซึ่งควรพิมพ์ออกมา - ในแบบสอบถามที่สิบ จุดยอดทั้งสี่เชื่อมต่อกับจุดยอด 1: 1,2,3,4 ซึ่งน้อยกว่า 5 ดังนั้นให้พิมพ์ -1

ตัวอย่างอินพุต 2

6 20
1 3 4
1 3 5
2 1 1
2 3 1
1 1 5
2 6 9
2 1 3
2 6 1
1 4 6
2 2 1
2 6 2
2 4 7
1 1 4
2 6 2
2 3 4
1 2 5
2 4 1
1 1 6
2 3 3
2 1 3

ตัวอย่างเอาต์พุต 2

1
5
-1
3
6
2
5
-1
5
3
6
4
4

มีกราฟไร้ทิศทางที่มีจุดยอด N จุดและไม่มีเส้นเชื่อมใด ๆ จุดยอดจะถูกระบุเลขตั้งแต่ 1 ถึง N
คุณจะได้รับ Q คำถามที่ต้องประมวลผลตามลำดับ แต่ละคำถามนั้นเป็นประเภทใดประเภทหนึ่งดังนี้:

- ประเภท 1: ให้ในรูปแบบ "1 u v". เพิ่มเส้นเชื่อมระหว่างจุดยอด u และ v
- ประเภท 2: ให้ในรูปแบบ "2 v k". พิมพ์หมายเลขจุดยอดที่ใหญ่ที่สุดลำดับที่ k ในหมู่จุดยอดที่ถูกเชื่อมกับจุดยอด v หากมีจุดยอดน้อยกว่า k ที่เชื่อมกับ v ให้พิมพ์ -1

ข้อมูลนำเข้า

ข้อมูลนำเข้าจะได้รับจาก Standard Input ในรูปแบบต่อไปนี้:
"N Q"
\mathrm{query}_1
\mathrm{query}_2
\vdots
\mathrm{query}_Q

ที่นี่ \mathrm{query}_i คือคำถามลำดับที่ i และถูกให้ในรูปแบบต่อไปนี้:
"1 u v"

"2 v k"

ผลลัพธ์

ให้ q เป็นจำนวนคำถามประเภท 2 พิมพ์ q บรรทัด
สำหรับบรรทัดที่ i ให้แสดงคำตอบสำหรับคำถามประเภท 2 ลำดับที่ i

ข้อจำกัด

- 1 \leq N, Q \leq "2 \times 10^5"
- ในคำถามประเภท 1, 1 \leq u < v \leq N.
- ในคำถามประเภท 2, 1 \leq v \leq N, 1 \leq k \leq 10.
- ค่าทั้งหมดในข้อมูลนำเข้าเป็นจำนวนเต็ม

ตัวอย่างข้อมูลนำเข้า 1

4 10
1 1 2
2 1 1
2 1 2
2 1 3
1 1 3
1 2 3
1 3 4
2 1 1
2 1 3
2 1 5

ตัวอย่างผลลัพธ์ 1

2
1
-1
4
2
-1

- ในคำถามแรก เพิ่มเส้นเชื่อมระหว่างจุดยอด 1 และ 2
- ในคำถามที่สอง มีจุดยอดสองจุดที่ถูกเชื่อมกับจุดยอด 1 ได้แก่ 1 และ 2 ในหมู่พวกเขา หมายเลขจุดยอดที่ใหญ่ที่สุดลำดับที่ 1 คือ 2 ซึ่งควรถูกพิมพ์
- ในคำถามที่สาม มีจุดยอดสองจุดที่ถูกเชื่อมกับจุดยอด 1 ได้แก่ 1 และ 2 ในหมู่พวกเขา หมายเลขจุดยอดที่ใหญ่ที่สุดลำดับที่ 2 คือ 1 ซึ่งควรถูกพิมพ์
- ในคำถามที่สี่ มีจุดยอดสองจุดที่ถูกเชื่อมกับจุดยอด 1: 1 และ 2 ซึ่งมีจำนวนน้อยกว่า 3 ดังนั้นพิมพ์ -1
- ในคำถามที่ห้า เพิ่มเส้นเชื่อมระหว่างจุดยอด 1 และ 3
- ในคำถามที่หก เพิ่มเส้นเชื่อมระหว่างจุดยอด 2 และ 3
- ในคำถามที่เจ็ด เพิ่มเส้นเชื่อมระหว่างจุดยอด 3 และ 4
- ในคำถามที่แปด มีจุดยอดสี่จุดที่ถูกเชื่อมกับจุดยอด 1 ได้แก่ 1,2,3,4 ในหมู่พวกเขา หมายเลขจุดยอดที่ใหญ่ที่สุดลำดับที่ 1 คือ 4 ซึ่งควรถูกพิมพ์
- ในคำถามที่เก้า มีจุดยอดสี่จุดที่ถูกเชื่อมกับจุดยอด 1 ได้แก่ 1,2,3,4 ในหมู่พวกเขา หมายเลขจุดยอดที่ใหญ่ที่สุดลำดับที่ 3 คือ 2 ซึ่งควรถูกพิมพ์
- ในคำถามที่สิบ มีจุดยอดสี่จุดที่ถูกเชื่อมกับจุดยอด 1 ได้แก่ 1,2,3,4 ซึ่งมีจำนวนน้อยกว่า 5 ดังนั้นพิมพ์ -1

ตัวอย่างข้อมูลนำเข้า 2

6 20
1 3 4
1 3 5
2 1 1
2 3 1
1 1 5
2 6 9
2 1 3
2 6 1
1 4 6
2 2 1
2 6 2
2 4 7
1 1 4
2 6 2
2 3 4
1 2 5
2 4 1
1 1 6
2 3 3
2 1 3

ตัวอย่างผลลัพธ์ 2

1
5
-1
3
6
2
5
-1
5
3
6
4
4

มีกราฟที่ไม่มีทิศทาง (undirected graph) ที่มีจุดยอด N และขอบ 0 จุดยอดมีหมายเลข 1 ถึง N
คุณจะได้รับ Q คำสั่งเพื่อดำเนินการตามลำดับ แต่ละคำถามเป็นหนึ่งในสองประเภทต่อไปนี้:

- ประเภท 1: ให้ในรูปแบบ 1u v. เพิ่มขอบระหว่างจุดยอด u และ v
- ประเภท 2: ให้ในรูปแบบ 2v k. พิมพ์หมายเลขจุดยอดที่ใหญ่ที่สุด k-th ในหมู่จุดยอดที่เชื่อมต่อกับ Vertex v. หากมีน้อยกว่า k จุดยอดที่เชื่อมต่อกับ v, พิมพ์ -1

ป้อนข้อมูล

อินพุตได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N Q
\mathrm{query}_1
\mathrm{query}_2
\vdots
\mathrm{query}_Q

ที่นี่ \mathrm{query}_i เป็นคำสั่ง i-th และได้รับในรูปแบบหนึ่งต่อไปนี้:
1 u v

2 v k

เอาท์พุท

ให้ q เป็นจำนวนคำสั่งประเภท 2 พิมพ์ q บรรทัด
บรรทัด i-th ควรมีคำตอบสำหรับคำสั่ง I-Thype 2

ข้อ จำกัด

- 1 \leq N, Q \leq 2 \times 10^5
- ในคำสั่งประเภท 1, 1 \leq u < v \leq N
- ในคำสั่งประเภท 2, 1 \leq v \leq N, 1 \leq k \leq 10
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม

อินพุตตัวอย่าง 1

4 10
1 1 2
2 1 1
2 1 2
2 1 3
1 1 3
1 2 3
1 3 4
2 1 1
2 1 3
2 1 5

ตัวอย่างเอาท์พุท 1

2
1
-1
4
2
-1

- ในคำสั่งแรกขอบจะถูกเพิ่มระหว่างจุดยอด 1 และ 2
- ในคำสั่งที่สองจุดยอดสองจุดเชื่อมต่อกับจุดยอด 1: 1 และ 2 ในหมู่พวกเขาหมายเลขจุดยอดที่ใหญ่ที่สุด 1-St คือ 2 ซึ่งควรพิมพ์
- ในคำสั่งที่สามจุดยอดสองจุดเชื่อมต่อกับจุดยอด 1: 1 และ 2 ในหมู่พวกเขาหมายเลขจุดยอดที่ใหญ่ที่สุด 2-ND คือ 1 ซึ่งควรพิมพ์
- ในคำสั่งที่สี่จุดยอดสองจุดเชื่อมต่อกับจุดยอด 1: 1 และ 2 ซึ่งน้อยกว่า 3 ดังนั้นพิมพ์ -1
- ในการสืบค้นที่ห้าขอบจะถูกเพิ่มระหว่างจุดยอด 1 และ 3
- ในการสืบค้นที่หกขอบจะถูกเพิ่มระหว่างจุดยอด 2 และ 3
- ในการสืบค้นที่เจ็ดขอบจะถูกเพิ่มระหว่างจุดยอด 3 และ 4
- ในการสืบค้นที่แปดจุดยอดสี่จุดเชื่อมต่อกับจุดยอด 1: 1,2,3,4 ในหมู่พวกเขาหมายเลขจุดยอดที่ใหญ่ที่สุด 1-St คือ 4 ซึ่งควรพิมพ์
- ในการสืบค้นที่เก้าจุดยอดสี่จุดเชื่อมต่อกับจุดยอด 1: 1,2,3,4 ในหมู่พวกเขาหมายเลขจุดยอดที่ใหญ่ที่สุด 3-RD คือ 2 ซึ่งควรพิมพ์
- ในการสืบค้นที่สิบจุดยอดสี่จุดเชื่อมต่อกับจุดยอด 1: 1,2,3,4 ซึ่งน้อยกว่า 5 ดังนั้นพิมพ์ -1

อินพุตตัวอย่าง 2

6 20
1 3 4
1 3 5
2 1 1
2 3 1
1 1 5
2 6 9
2 1 3
2 6 1
1 4 6
2 2 1
2 6 2
2 4 7
1 1 4
2 6 2
2 3 4
1 2 5
2 4 1
1 1 6
2 3 3
2 1 3

ตัวอย่างเอาท์พุท 2

1
5
-1
3
6
2
5
-1
5
3
6
4
4


คุณได้รับสตริง  S  ที่มีความยาว  N  คุณยังได้รับคำถาม  Q  ซึ่งคุณควรดำเนินการตามลำดับ
คำถามที่  i  เป็นดังนี้:

- ให้จำนวนเต็ม  X_i และตัวอักษร  C_i  แทนที่ตัวอักษรที่  X_i -th ของ  S  ด้วย  C_i  แล้วพิมพ์จำนวนครั้งที่สตริง  ABC  ปรากฏเป็นซับสตริงใน  S

ที่นี่ ซับสตริงของ  S  คือสตริงที่ได้จากการลบตัวอักษรศูนย์หรือมากกว่าจากจุดเริ่มต้นและศูนย์หรือมากกว่าจากจุดสิ้นสุดของ  S
ตัวอย่างเช่น  ab  เป็นซับสตริงของ  abc  แต่  ac  ไม่เป็นซับสตริงของ  abc

Input

ข้อมูลนำเข้าให้จาก Standard Input ในรูปแบบต่อไปนี้:
 N   Q
 S
X_1  C_1
 X_2   C_2
\vdots
X_Q  C_Q

Output

พิมพ์  Q  บรรทัด
บรรทัดที่ i (1 \le i \le Q) ควรมีคำตอบสำหรับคำถามที่ i

ข้อจำกัด

- 3 \le N \le 2 \times 10^5
- 1 \le Q \le 2 \times 10^5
- S  เป็นสตริงที่มีความยาว  N  ประกอบด้วยตัวอักษรภาษาอังกฤษตัวใหญ่
- 1 \le X_i \le N
-  C_i  เป็นตัวอักษรภาษาอังกฤษตัวใหญ่

ตัวอย่างInput 1

7 4
ABCDABC
4 B
3 A
5 C
4 G

ตัวอย่างOutput 1

2
1
1
0

หลังจากประมวลผลแต่ละคำถาม  S  จะเป็นดังนี้

- หลังจากคำถามแรก:  S= ABCBABC  ในสตริงนี้  ABC ปรากฏสองครั้งเป็นซับสตริง
- หลังจากคำถามที่สอง:  S= ABABABC  ในสตริงนี้  ABC  ปรากฏครั้งหนึ่งเป็นซับสตริง
- หลังจากคำถามที่สาม:  S= ABABCBC  ในสตริงนี้  ABC  ปรากฏครั้งหนึ่งเป็นซับสตริง
- หลังจากคำถามที่สี่:  S= ABAGCBC  ในสตริงนี้  ABC  ปรากฏศูนย์ครั้งเป็นซับสตริง

ตัวอย่างInput 2

3 3
ABC
1 A
2 B
3 C

ตัวอย่างOutput 2

1
1
1

มีกรณีที่  S  ไม่เปลี่ยนแปลงจากการประมวลผลคำถาม

ตัวอย่างInput 3

15 10
BBCCBCACCBACACA
9 C
11 B
5 B
11 B
4 A
8 C
8 B
5 B
7 B
14 B

ตัวอย่างOutput 3

0
0
0
0
1
1
2
2
1
1

คุณจะได้รับสตริง S ที่มีความยาว N คุณจะได้รับคิวรี Q รายการ ซึ่งคุณควรประมวลผลตามลำดับ
คิวรีที่ i มีดังต่อไปนี้:

- กำหนดจำนวนเต็ม X_i และอักขระ C_i ให้แทนที่อักขระตัวที่ X_i ของ S ด้วย C_i จากนั้นพิมพ์จำนวนครั้งที่สตริง ABC ปรากฏเป็นสตริงย่อยใน S

ในกรณีนี้ สตริงย่อยของ S คือสตริงที่ได้จากการลบอักขระ 0 ตัวขึ้นไปจากจุดเริ่มต้นและ 0 ตัวขึ้นไปจากจุดสิ้นสุดของ S
ตัวอย่างเช่น ab เป็นสตริงย่อยของ abc แต่ ac ไม่ใช่สตริงย่อยของ abc

อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N Q
S
X_1 C_1
X_2 C_2
\vdots
X_Q C_Q

เอาต์พุต

พิมพ์ Q บรรทัด
บรรทัดที่ i (1 \le i \le Q) ควรมีคำตอบสำหรับคิวรีที่ i
ข้อจำกัด

- 3 \le N \le 2 \times 10^5
- 1 \le Q \le 2 \times 10^5
- S เป็นสตริงความยาว N ที่ประกอบด้วยตัวอักษรภาษาอังกฤษตัวพิมพ์ใหญ่
- 1 \le X_i \le N
- C_i เป็นตัวอักษรภาษาอังกฤษตัวพิมพ์ใหญ่

ตัวอย่างอินพุต 1

7 4
ABCDABC
4 B
3 A
5 C
4 G

ตัวอย่างเอาต์พุต 1

2
1
1
0

หลังจากประมวลผลแบบสอบถามแต่ละครั้ง S จะกลายเป็นดังนี้

- หลังจากแบบสอบถามแรก: S= ABCBABC ในสตริงนี้ ABC จะปรากฏเป็นสตริงย่อยสองครั้ง
- หลังจากแบบสอบถามที่สอง: S= ABABABC ในสตริงนี้ ABC จะปรากฏเป็นสตริงย่อยหนึ่งครั้ง
- หลังจากแบบสอบถามที่สาม: S= ABABCBC ในสตริงนี้ ABC จะปรากฏเป็นสตริงย่อยหนึ่งครั้ง
- หลังจากแบบสอบถามที่สี่: S= ABAGCBC ในสตริงนี้ ABC จะปรากฏเป็นสตริงย่อยศูนย์ครั้ง
ตัวอย่างอินพุต 2

3 3
ABC
1 A
2 B
3 C

ตัวอย่างเอาต์พุต 2

1
1
1

มีบางกรณีที่ S ไม่เปลี่ยนแปลงผ่านการประมวลผลแบบสอบถาม

ตัวอย่างอินพุต 3

15 10
BBCCBCACCBACACA
9 C
11 B
5 B
11 B
4 A
8 C
8 B
5 B
7 B
14 B

ตัวอย่างเอาต์พุต 3

0
0
0
0
1
1
2
2
1
1


มีอาคารทั้งหมด N อาคาร คือ อาคาร 1, อาคาร 2, \ldots, อาคาร N เรียงกันเป็นลำดับในรูปแบบนี้ ความสูงของอาคาร i (1 \leq i \leq N) คือ H_i
สำหรับแต่ละ i = 1, 2, \ldots, N ให้หาเลขจำนวนเต็ม j (i < j \leq N) ที่เป็นไปตามเงื่อนไขต่อไปนี้:

- ไม่มีอาคารใดสูงกว่าอาคาร j ระหว่างอาคาร i และ j

Input

อินพุตจะได้รับจาก Standard Input ในรูปแบบต่อไปนี้:
N
H_1 H_2 \ldots H_N

Output

สำหรับแต่ละ i = 1, 2, \ldots, N ให้ c_i เป็นจำนวน j ที่สอดคล้องกับเงื่อนไข ให้พิมพ์ c_1, c_2, \ldots, c_N ตามลำดับ แยกด้วยช่องว่าง

ข้อจำกัด

- 1 \leq N \leq 2 \times 10^5
- 1 \leq H_i \leq N
-  H_i\neq H_j\ (i\neq j)
- ค่าของอินพุตทั้งหมดเป็นจำนวนเต็ม

ตัวอย่างInput 1

5
2 1 4 3 5

ตัวอย่างOutput 1

3 2 2 1 0

สำหรับ i=1, เลขจำนวนเต็ม j ที่สอดคล้องกับเงื่อนไขคือ 2, 3 และ 5: มีสามตัว (ระหว่างอาคาร 1 และ 4 มีอาคารที่สูงกว่าอาคาร 4 คือ อาคาร 3 ดังนั้น j=4 ไม่เป็นไปตามเงื่อนไข) ดังนั้น เลขตัวแรกของผลลัพธ์คือ 3

ตัวอย่างInput 2

4
1 2 3 4

ตัวอย่างOutput 2

3 2 1 0

ตัวอย่างInput 3

10
1 9 6 5 2 7 10 4 8 3

ตัวอย่างOutput 3

2 3 3 3 2 1 2 1 1 0

มีอาคาร N หลัง ได้แก่ อาคาร 1 อาคาร 2 \ldots อาคาร N เรียงเป็นเส้นตรงตามลำดับนี้ ความสูงของอาคาร i (1 \leq i \leq N) คือ H_i
สำหรับแต่ละ i = 1, 2, \ldots, N จงหาจำนวนเต็ม j (i < j \leq N) ที่ตอบสนองเงื่อนไขต่อไปนี้:

- ไม่มีอาคารใดสูงกว่าอาคาร j ระหว่างอาคาร i และ j

อินพุต

อินพุตได้จากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N
H_1 H_2 \ldots H_N

เอาต์พุต

สำหรับแต่ละ i = 1, 2, \ldots, N ให้ c_i เป็นจำนวน j ที่ตอบสนองเงื่อนไข พิมพ์ c_1, c_2, \ldots, c_N ตามลำดับ โดยคั่นด้วยช่องว่าง
ข้อจำกัด

- 1 \leq N \leq 2 \times 10^5
- 1 \leq H_i \leq N
- H_i\neq H_j\ (i\neq j)
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม

ตัวอย่างอินพุต 1

5
2 1 4 3 5

ตัวอย่างเอาต์พุต 1

3 2 2 1 0

สำหรับ i=1 จำนวนเต็ม j ที่ตอบสนองเงื่อนไขคือ 2, 3 และ 5: มี 3 ค่า (ระหว่างอาคาร 1 และ 4 มีอาคารที่สูงกว่าอาคาร 4 คือ อาคาร 3 ดังนั้น j=4 จึงไม่ตรงตามเงื่อนไข) ดังนั้นตัวเลขแรกในผลลัพธ์คือ 3

ตัวอย่างอินพุต 2

4
1 2 3 4

ตัวอย่างเอาต์พุต 2

3 2 1 0

ตัวอย่างอินพุต 3

10
1 9 6 5 2 7 10 4 8 3

ตัวอย่างเอาต์พุต 3

2 3 3 3 2 1 2 1 1 0


คุณได้รับลำดับของจำนวนเต็มบวกสามลำดับความยาว N: A=(A_1,A_2,\ldots,A_N), B=(B_1,B_2,\ldots,B_N) และ C=(C_1,C_2,\ldots,C_N)
หาจำนวนคู่ของจำนวนเต็มบวก (x, y) ที่ตอบสนองเงื่อนไขต่อไปนี้:

- A_i \times x + B_i \times y < C_i สำหรับ 1 \leq i \leq N ทั้งหมด

สามารถพิสูจน์ได้ว่าจำนวนคู่ของจำนวนเต็มบวกดังกล่าวที่ตอบสนองเงื่อนไขนั้นมีจำกัด
คุณได้รับกรณีทดสอบ T กรณี ซึ่งแต่ละกรณีจะต้องได้รับการแก้ไข

อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้ ในที่นี้ \mathrm{case}_i หมายถึงกรณีทดสอบที่ i
T
\mathrm{case}_1
\mathrm{case}_2
\vdots
\mathrm{case}_T

แต่ละกรณีทดสอบจะมีรูปแบบดังต่อไปนี้:
N
A_1 B_1 C_1
A_2 B_2 C_2
\vdots
A_N B_N C_N

เอาต์พุต

พิมพ์ T บรรทัด บรรทัดที่ i (1 \leq i \leq T) ควรมีคำตอบสำหรับ \mathrm{case}_i

ข้อจำกัด

- 1 \leq T \leq 2 \times 10^5
- 1 \leq N \leq 2 \times 10^5
- 1 \leq A_i, B_i, C_i \leq 10^9
- ผลรวมของ N ในทุกกรณีทดสอบมีค่าไม่เกิน 2 \times 10^5
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม

ตัวอย่างอินพุต 1

2
2
1 1 4
1 2 5
1
1 1 2

ตัวอย่างเอาต์พุต 1

2
0

ในกรณีทดสอบแรก มีจำนวนเต็มที่ถูกต้องสองคู่: (x, y) = (1, 1), (2,1) ดังนั้น บรรทัดแรกควรประกอบด้วย 2

ในกรณีทดสอบที่สอง ไม่มีคู่จำนวนเต็มที่ถูกต้อง ดังนั้นบรรทัดที่สองควรมี 0

ตัวอย่างอินพุต 2

3
7
138 16011 918976
5478 7748 499926
5234 17727 748589
1157 10511 643136
31200 3005 721285
28839 14469 798851
1933 5378 864127
9
17775 1665 386430
37001 863 922418
9756 4182 746671
12379 9106 807578
3984 4049 640539
25333 9869 780810
20372 7000 688738
16107 11974 827227
10779 10531 770510
5
4916 14132 460944
11856 45422 610561
56014 18216 825793
10363 6220 945356
37418 33866 851593

ผลลัพธ์ตัวอย่าง 2

660
995
140

คุณจะได้รับสามลำดับความยาว N ของจำนวนเต็มบวก: A=(A_1,A_2,\ldots,A_N), B=(B_1,B_2,\ldots,B_N) และ C=(C_1,C_2,\ldots,C_N).
ค้นหาจำนวนคู่ของจำนวนเต็มบวก (x, y) ที่เป็นไปตามเงื่อนไขต่อไปนี้:

- A_i \times x + B_i \times y < C_i  สำหรับทั้งหมด 1 \leq i \leq N.

มันสามารถพิสูจน์ได้ว่าจำนวนของจำนวนเต็มบวกดังกล่าวที่สอดคล้องกับเงื่อนไขนั้นมี จำกัด
คุณจะได้รับกรณีทดสอบซึ่งแต่ละกรณีควรได้รับการแก้ไข

ป้อนข้อมูล

อินพุตได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้ ที่นี่ \mathrm {case} _i หมายถึงกรณีทดสอบ i-th
T
\mathrm {case} _1
\mathrm {case} _2
\vdots
\mathrm {case} _t

แต่ละกรณีทดสอบจะได้รับในรูปแบบต่อไปนี้:
N
A_1 B_1 C_1
A_2 B_2 C_2
\vdots
A_N B_N C_N

เอาท์พุท

พิมพ์บรรทัด T บรรทัด i-th (1 \leq i \leq T) ควรมีคำตอบสำหรับ \mathrm {case} _i

ข้อ จำกัด

- 1 \leq T \leq 2 \times 10^5
- 1 \leq N \leq 2 \times 10^5
- 1 \leq A_i, B_i, C_i \leq 10^9
- ผลรวมของ N เหนือกรณีทดสอบทั้งหมดมากที่สุด 2 \times 10^5.
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม

อินพุตตัวอย่าง 1

2
2
1 1 4
1 2 5
1
1 1 2

ตัวอย่างเอาท์พุท 1

2
0

ในกรณีทดสอบครั้งแรกมีจำนวนเต็มสองคู่ที่ถูกต้อง: (x, y) = (1, 1), (2,1) ดังนั้นบรรทัดแรกควรมี 2
ในกรณีทดสอบครั้งที่สองไม่มีจำนวนเต็มที่ถูกต้อง ดังนั้นบรรทัดที่สองควรมี 0

อินพุตตัวอย่าง 2

3
7
138 16011 918976
5478 7748 499926
5234 17727 748589
1157 10511 643136
31200 3005 721285
28839 14469 798851
1933 5378 864127
9
17775 1665 386430
37001 863 922418
9756 4182 746671
12379 9106 807578
3984 4049 640539
25333 9869 780810
20372 7000 688738
16107 11974 827227
10779 10531 770510
5
4916 14132 460944
11856 45422 610561
56014 18216 825793
10363 6220 945356
37418 33866 851593

ตัวอย่างเอาท์พุท 2

660
995
140


มีกราฟกำกับทิศทางแบบง่าย G ที่มีจุดยอด N จุดและขอบ N+M ขอบมีหมายเลขตั้งแต่ 1 ถึง N และขอบมีหมายเลขตั้งแต่ 1 ถึง N+M
ขอบ i (1 \leq i \leq N) ไปจากจุดยอด i ไปยังจุดยอด i+1 (ในที่นี้ จุดยอด N+1 ถือเป็นจุดยอด 1)
ขอบ N+i (1 \leq i \leq M) ไปจากจุดยอด X_i ไปยังจุดยอด Y_i
ทาคาฮาชิอยู่ที่จุดยอด 1 ที่จุดยอดแต่ละจุด เขาสามารถเคลื่อนที่ไปยังจุดยอดใดๆ ก็ได้ที่มีขอบออกจากจุดยอดปัจจุบัน
คำนวณจำนวนวิธีที่เขาสามารถเคลื่อนที่ได้พอดี K ครั้ง นั่นคือ หาจำนวนลำดับจำนวนเต็ม (v_0, v_1, \dots, v_K) ที่มีความยาว K+1 ที่ตอบสนองเงื่อนไขทั้งสามข้อต่อไปนี้:

- 1 \leq v_i \leq N สำหรับ i = 0, 1, \dots, K.
- v_0 = 1.
- มีขอบที่มีทิศทางจากจุดยอด v_{i-1} ไปยังจุดยอด v_i สำหรับ i = 1, 2, \ldots, K.

เนื่องจากตัวเลขนี้อาจมีขนาดใหญ่ได้มาก ให้พิมพ์ตัวเลขนี้โดยใช้โมดูโล 998244353

อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N M K
X_1 Y_1
X_2 Y_2
\vdots
X_M Y_M

เอาต์พุต

พิมพ์จำนวนโมดูโล 998244353

ข้อจำกัด

- 2 \leq N \leq 2 \times 10^5
- 0 \leq M \leq 50
- 1 \leq K \leq 2 \times 10^5
- 1 \leq X_i, Y_i \leq N, X_i \neq Y_i
- ขอบที่มีทิศทาง N+M ทั้งหมดแยกจากกัน
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม
ตัวอย่างอินพุต 1

6 2 5
1 4
2 5

ตัวอย่างเอาต์พุต 1

5

รูปด้านบนแสดงกราฟ G มีห้าวิธีที่ทาคาฮาชิจะเคลื่อนที่ได้:

- จุดยอด 1 \to จุดยอด 2 \to จุดยอด 3 \to จุดยอด 4 \to จุดยอด 5 \to จุดยอด 6
- จุดยอด 1 \to จุดยอด 2 \to จุดยอด 5 \to จุดยอด 6 \to จุดยอด 1 \to จุดยอด 2
- จุดยอด 1 \to จุดยอด 2 \to จุดยอด 5 \to จุดยอด 6 \to จุดยอด 1 \to จุดยอด 4
- จุดยอด 1 \to จุดยอด 4 \to จุดยอด 5 \to จุดยอด 6 \to จุดยอด 1 \to จุดยอด 2
- จุดยอด 1 \to จุดยอด 4 \to จุดยอด 5 \to จุดยอด 6 \to จุดยอด 1 \to จุดยอด 4

ตัวอย่างอินพุต 2

10 0 200000

ตัวอย่างผลลัพธ์ 2

1

ตัวอย่างผลลัพธ์ 3

199 10 1326
122 39
142 49
164 119
197 127
188 145
69 80
6 120
24 160
18 154
185 27

ตัวอย่างผลลัพธ์ 3

451022766

มีกราฟกํากับอย่างง่าย G ที่มีจุดยอด N จุดและขอบ N + M จุดยอดมีหมายเลข 1 ถึง N และขอบมีหมายเลข 1 ถึง N+M
ขอบ i (1 \leq i \leq N) จากจุดยอด i ไปยังจุดยอด i+1 (ในที่นี้ จุดยอด N+1 ถือเป็นจุดยอด 1)
ขอบที่ N+i （1\ leq i\ leq M） ไปจากจุดบดฐอด X_i ถึงจุด฼ด฼อด Y_i
ทาคาฮาชิอยู่ที่จุดยอด 1 เขาสามารถย้ายไปยังจุดยอดใดก็ได้ที่มีขอบขาออกจากจุดยอดปัจจุบัน
คํานวณจํานวนวิธีที่เขาสามารถเคลื่อนที่ได้ K ครั้งพอดี
นั่นคือหาจํานวนลําดับจํานวนเต็ม (v_0, v_1, \dots, v_K) ที่มีความยาว K+1 ที่ตรงตามเงื่อนไขสามข้อต่อไปนี้:

- 1 \leq v_i \leq N สําหรับ i = 0, 1, \dots, K
- v_0 = 1
- มีขอบกํากับจากจุดยอด v_{i-1} ไปยังจุดยอด v_i สําหรับ i = 1, 2, \ldots, K

เนื่องจากตัวเลขนี้อาจมีขนาดใหญ่มาก ให้พิมพ์โมดูโล 998244353

อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N M K
X_1 Y_1
X_2 Y_2
\vdots
X_M Y_M

ผลิตภัณฑ์

พิมพ์ผลลัพธ์ modulo 998244353

ข้อจํากัด

- 2 \leq N \leq 2 \times 10^5
- 0 \leq M \leq 50
- 1 \leq K \leq 2 \times 10^5
- 1 \leq X_i, Y_i \leq N, X_i \neq Y_i
- ขอบทิศทาง N+M ทั้งหมดแตกต่างกัน
- ค่าอินพุตทั้งหมดเป็นจํานวนเต็ม

ตัวอย่างอินพุต 1

6 2 5
1 4
2 5

ตัวอย่างผลิตภัณฑ์ 1

5

รูปด้านบนแสดงถึงกราฟ G ทาคาฮาชิมีห้าวิธีในการเคลื่อนย้าย:

- จุดยอด 1\ ถึงจุดยอด 2\ ถึงจุดยอด 3\ ถึงจุดยอด 4 \ถึงจุดยอด 5\ ถึงจุดยอด 6
- จุดยอด 1 \ถึงจุดยอด 2\ ถึงจุดยอด 5 \ถึงจุดยอด 6 \ถึงจุดยอด 1 \ถึงจุดยอด 2
- จุดยอด 1 \ถึงจุดยอด 2 \ถึงจุดยอด 5 \ถึงจุดยอด 6 \ถึงจุดยอด 1\ ถึงจุดยอด 4
- จุดยอด 1\ ถึงจุดยอด 4\ ถึงจุดยอด 5 \ถึงจุดยอด 6 \ถึงจุดยอด 1 \ถึงจุดยอด 2
- จุดยอด 1\ ถึงจุดยอด 4 \ถึงจุดยอด 5 \ถึงจุดยอด 6 \ถึงจุดยอด 1 \ถึงจุดยอด 4

ตัวอย่างอินพุต 2

10 0 200000

ตัวอย่างเอาต์พุต 2

1

ตัวอย่างอินพุต 3

199 10 1326
122 39
142 49
164 119
197 127
188 145
69 80
6 120
24 160
18 154
185 27

ตัวอย่างเอาต์พุต 3

451022766


คุณได้รับสตริง S ที่ประกอบด้วยตัวอักษรภาษาอังกฤษพิมพ์เล็กและ ..
จงหาสตริงที่ได้จากการนำ . ทั้งหมดออกจาก S

Input

อินพุตถูกให้จาก Standard Input ในรูปแบบต่อไปนี้:
S

Output

พิมพ์สตริงที่ได้จากการนำ . ทั้งหมดออกจาก S

ข้อจำกัด

- S เป็นสตริงที่มีความยาวระหว่าง 1 ถึง 100 ตัวอักษร รวมทั้งประกอบด้วยตัวอักษรภาษาอังกฤษพิมพ์เล็กและ ..

ตัวอย่างInput 1

.v.

ตัวอย่างOutput 1

v

การนำ . ทั้งหมดออกจาก .v. ได้เป็น v ดังนั้นพิมพ์ v

ตัวอย่างInput 2

chokudai

ตัวอย่างOutput 2

chokudai

มีกรณีที่ S ไม่ได้ประกอบด้วย ..

ตัวอย่างInput 3

...

ตัวอย่างOutput 3

มีกรณีที่ตัวอักษรทั้งหมดใน S เป็น ..

คุณจะได้รับสตริง S ที่ประกอบด้วยตัวอักษรภาษาอังกฤษตัวพิมพ์เล็กและ ..
ค้นหาสตริงที่ได้จากการลบ . ทั้งหมดออกจาก S

อินพุต

อินพุตจะมาจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:

เอาต์พุต

พิมพ์สตริงที่ได้จากการลบ . ทั้งหมดออกจาก S

ข้อจำกัด

- S คือสตริงที่มีความยาวระหว่าง 1 ถึง 100 รวมทั้งหมด ประกอบด้วยตัวอักษรภาษาอังกฤษตัวพิมพ์เล็กและ ..

ตัวอย่างอินพุต 1

.v.

ตัวอย่างเอาต์พุต 1

v

การลบ . ทั้งหมดออกจาก .v. จะได้ผลลัพธ์เป็น v ดังนั้นให้พิมพ์ v

ตัวอย่างอินพุต 2

chokudai

ตัวอย่างเอาต์พุต 2

chokudai

มีบางกรณีที่ S ไม่มี ..

ตัวอย่างอินพุต 3

...

ตัวอย่างเอาต์พุต 3

มีบางกรณีที่อักขระทั้งหมดใน S เป็น ..

คุณจะได้รับสตริง S ซึ่งประกอบด้วยตัวอักษรภาษาอังกฤษตัวพิมพ์เล็กและเครื่องหมายจุด(.)
ค้นหาสตริงที่ได้จากการลบเครื่องหมายจุดทั้งหมดออกจาก S

ป้อนข้อมูล:
อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
S

เอาท์พุท:
พิมพ์สตริงที่ได้จากการลบเครื่องหมายจุดทั้งหมดออกจาก S

ข้อจำกัด:
- S เป็นสตริงที่มีความยาวระหว่าง 1 ถึง 100 ตัวอักษร โดยประกอบด้วยตัวอักษรภาษาอังกฤษตัวพิมพ์เล็กและเครื่องหมายจุด (.)

อินพุตตัวอย่างที่ 1

.v.

เอาท์พุทตัวอย่างที่ 1

v
การลบเครื่องหมายจุดทั้งหมดจาก .v. จะได้ v ดังนั้นพิมพ์ v

อินพุตตัวอย่างที่ 2

chokudai

เอาท์พุทตัวอย่างที่ 2

chokudai
ในกรณีนี้ S ไม่มีเครื่องหมายจุด ดังนั้นผลลัพธ์คือ chokudai

อินพุตตัวอย่างที่ 3

...

เอาท์พุทตัวอย่างที่ 3

มีบางกรณีที่ตัวอักษรทั้งหมดใน S เป็น..


มี 12 สตริง S_1, S_2, \ldots, S_{12} ที่ประกอบด้วยตัวอักษรภาษาอังกฤษตัวพิมพ์เล็ก
หาจำนวนเต็ม i (1 \leq i \leq 12) ที่สอดคล้องกับความยาวของ S_i เท่ากับ i

อินพุต

อินพุตจะกำหนดจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
S_1
S_2
\vdots
S_{12}

เอาต์พุต

พิมพ์จำนวนเต็ม i (1 \leq i \leq 12) ที่สอดคล้องกับความยาวของ S_i เท่ากับ i

ข้อจำกัด

- S_i แต่ละตัวเป็นสตริงที่มีความยาวระหว่าง 1 ถึง 100 รวมทั้งหมด ประกอบด้วยตัวอักษรภาษาอังกฤษตัวพิมพ์เล็ก (1 \leq i \leq 12)

ตัวอย่างอินพุต 1

มกราคม
กุมภาพันธ์
มีนาคม
เมษายน
พฤษภาคม
มิถุนายน
กรกฎาคม
สิงหาคม
กันยายน
ตุลาคม
พฤศจิกายน
ธันวาคม

ตัวอย่างเอาต์พุต 1

1

มีจำนวนเต็ม i เพียงจำนวนเดียวที่ทำให้ S_i มีความยาว i: 9 ดังนั้น ให้พิมพ์ 1

ตัวอย่างอินพุต 2

ve
inrtfa
npccxva
djiq
lmbkktngaovl
mlfiv
fmbvcmuxuwggfq
qgmtwxmb
jii
ts
bfxrvs
eqvy

ตัวอย่างเอาต์พุต 2

2

มีจำนวนเต็ม i สองตัวที่ทำให้ S_i มีความยาว i: 4 และ 8 ดังนั้น ให้พิมพ์ 2

มี 12 สตริง S_1, S_2, \ldots, S_{12} ที่ประกอบด้วยตัวอักษรภาษาอังกฤษตัวพิมพ์เล็ก
หาจำนวนเต็ม i (1 \leq i \leq 12) ที่สอดคล้องกับความยาวของ S_i เท่ากับ i

อินพุต

อินพุตจะกำหนดจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
S_1
S_2
\vdots
S_{12}

เอาต์พุต

พิมพ์จำนวนเต็ม i (1 \leq i \leq 12) ที่สอดคล้องกับความยาวของ S_i เท่ากับ i

ข้อจำกัด

- S_i แต่ละตัวเป็นสตริงที่มีความยาวระหว่าง 1 ถึง 100 รวมทั้งหมด ประกอบด้วยตัวอักษรภาษาอังกฤษตัวพิมพ์เล็ก (1 \leq i \leq 12)

ตัวอย่างอินพุต 1

january
february
march
april
may
june
july
august
september
october
november
december

ตัวอย่างเอาต์พุต 1

1

มีจำนวนเต็ม i เพียงจำนวนเดียวที่ทำให้ S_i มีความยาว i: 9 ดังนั้น ให้พิมพ์ 1

ตัวอย่างอินพุต 2

ve
inrtfa
npccxva
djiq
lmbkktngaovl
mlfiv
fmbvcmuxuwggfq
qgmtwxmb
jii
ts
bfxrvs
eqvy

ตัวอย่างเอาต์พุต 2

2

มีจำนวนเต็ม i สองตัวที่ทำให้ S_i มีความยาว i: 4 และ 8 ดังนั้น ให้พิมพ์ 2


มีแป้นพิมพ์ที่มีปุ่ม 26 ปุ่มเรียงอยู่บนเส้นจำนวน
การจัดเรียงของแป้นพิมพ์นี้แสดงด้วยสตริง S ซึ่งเป็นการสับเปลี่ยนของ ABCDEFGHIJKLMNOPQRSTUVWXYZ แป้นที่สอดคล้องกับตัวอักษร S_x จะตั้งอยู่ที่พิกัด x (1 \leq x \leq 26) ที่นี่ S_x หมายถึงตัวอักษรลำดับที่ x ของ S
คุณจะใช้แป้นพิมพ์นี้ในการพิมพ์ ABCDEFGHIJKLMNOPQRSTUVWXYZ ในลำดับนี้ โดยพิมพ์แต่ละตัวอักษรเพียงครั้งเดียวด้วยนิ้วชี้ขวา
ในการพิมพ์ตัวอักษร คุณจำเป็นต้องย้ายนิ้วของคุณไปยังพิกัดของแป้นที่สอดคล้องกับตัวอักษรนั้นและกดแป้น ก่อนเริ่มต้น นิ้วของคุณอยู่ที่พิกัดของแป้นที่สอดคล้องกับ A จงหาผลรวมระยะทางที่น้อยที่สุดที่นิ้วของคุณต้องเดินทางจากการกดแป้นสำหรับ A ไปจนถึงการกดแป้นสำหรับ Z ในที่นี้ การกดแป้นไม่ถือเป็นการเพิ่มระยะทาง

Input

ข้อมูลนำเข้ามีให้จาก Standard Input ในรูปแบบดังนี้:
S

Output

พิมพ์คำตอบ

ข้อจำกัด

- S เป็นการสับเปลี่ยนของ ABCDEFGHIJKLMNOPQRSTUVWXYZ

ตัวอย่างInput 1

ABCDEFGHIJKLMNOPQRSTUVWXYZ

ตัวอย่างOutput 1

25

จากการกดแป้นสำหรับ A ถึงการกดแป้นสำหรับ Z คุณจำเป็นต้องย้ายนิ้ว 1 หน่วยต่อครั้งในทิศทางบวก ผลที่ได้คือผลรวมของระยะทางที่เดินทางทั้งสิ้น 25 เป็นไปไม่ได้ที่จะกดทุกแป้นด้วยระยะทางที่เดินทางทั้งหมดน้อยกว่า 25 ดังนั้นให้พิมพ์ 25

ตัวอย่างInput 2

MGJYIZDKSBHPVENFLQURTCWOAX

ตัวอย่างOutput 2

223

มีแป้นพิมพ์ที่มีปุ่ม 26 ปุ่มเรียงกันบนเส้นจำนวน
การจัดเรียงแป้นพิมพ์นี้แสดงด้วยสตริง S ซึ่งเป็นการเรียงสับเปลี่ยนของ ABCDEFGHIJKLMNOPQRSTUVWXYZ
ปุ่มที่สอดคล้องกับอักขระ S_x อยู่ที่พิกัด x (1 \leq x \leq 26) โดยที่ S_x แทนอักขระตัวที่ x ของ S
คุณจะใช้แป้นพิมพ์นี้เพื่อป้อน ABCDEFGHIJKLMNOPQRSTUVWXYZ ตามลำดับนี้ โดยพิมพ์แต่ละตัวอักษรเพียงครั้งเดียวด้วยนิ้วชี้ขวา
ในการป้อนอักขระ คุณต้องเลื่อนนิ้วไปที่พิกัดของปุ่มที่สอดคล้องกับอักขระนั้น แล้วกดแป้น
ขั้นแรก นิ้วของคุณอยู่ที่พิกัดของปุ่มที่สอดคล้องกับ A หาระยะทางรวมที่น้อยที่สุดที่นิ้วของคุณเคลื่อนที่ได้ตั้งแต่การกดแป้นสำหรับ A จนถึงการกดแป้นสำหรับ Z โดยที่การกดแป้นไม่ส่งผลต่อระยะทาง

อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:

เอาต์พุต

พิมพ์คำตอบ

ข้อจำกัด

- S คือการเรียงสับเปลี่ยนของ ABCDEFGHIJKLMNOPQRSTUVWXYZ

ตัวอย่างอินพุต 1

ABCDEFGHIJKLMNOPQRSTUVWXYZ

ตัวอย่างเอาต์พุต 1

25

จากการกดปุ่ม A ไปจนถึงการกดปุ่ม Z คุณต้องขยับนิ้วทีละ 1 หน่วยในทิศทางบวก ส่งผลให้ระยะทางเดินทางทั้งหมดคือ 25 ไม่สามารถกดปุ่มทั้งหมดที่มีระยะทางเดินทางทั้งหมดน้อยกว่า 25 ดังนั้นจึงพิมพ์ 25

ตัวอย่างอินพุต 2

MGJYIZDKSBHPVENFLQURTCWOAX

ตัวอย่างเอาต์พุต 2

223

มีแป้นพิมพ์ที่มี 26 ปุ่มจัดเรียงบนบรรทัดตัวเลข
การจัดเรียงของคีย์บอร์ดนี้แสดงด้วยสตริง S ซึ่งเป็นการเปลี่ยนแปลงของ ABCDEFGHIJKLMNOPQRSTUVWXYZ
คีย์ที่สอดคล้องกับอักขระ S_x อยู่ที่พิกัด x (1 \leq x \leq 26) ที่นี่ S_x หมายถึงอักขระ x-th ของ S.
คุณจะใช้แป้นพิมพ์นี้เพื่อป้อน ABCDEFGHIJKLMNOPQRSTUVWXYZ ในลำดับนี้พิมพ์ตัวอักษรแต่ละตัวหนึ่งครั้งด้วยนิ้วชี้ด้านขวาของคุณ
ในการป้อนอักขระคุณต้องเลื่อนนิ้วไปยังพิกัดของคีย์ที่สอดคล้องกับอักขระนั้นและกดปุ่ม
ในขั้นต้นนิ้วของคุณอยู่ที่พิกัดของคีย์ที่สอดคล้องกับ A. ค้นหาระยะทางที่เดินทางทั้งหมดที่เป็นไปได้น้อยที่สุดจากการกดปุ่มสำหรับการกดปุ่มสำหรับ Z ที่นี่การกดปุ่มไม่ได้มีส่วนร่วมในระยะทาง

ป้อนข้อมูล

อินพุตได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
S

เอาท์พุท

พิมพ์คำตอบ

ข้อ จำกัด

- S คือการเรียงสับเปลี่ยนของ ABCDEFGHIJKLMNOPQRSTUVWXYZ

อินพุตตัวอย่าง 1

ABCDEFGHIJKLMNOPQRSTUVWXYZ

ตัวอย่างเอาท์พุท 1

25

จากการกดปุ่มเพื่อให้ A ถึงการกดปุ่มสำหรับ Z คุณต้องเลื่อนนิ้วไป 1 หน่วยในทิศทางบวก ทำให้ระยะทางเดินทางทั้งหมดเป็น 25 หน่วย มันเป็นไปไม่ได้ที่จะกดปุ่มทั้งหมดด้วยระยะการเดินทางทั้งหมด น้อยกว่า 25 ดังนั้นพิมพ์ 25

อินพุตตัวอย่าง 2

MGJYIZDKSBHPVENFLQURTCWOAX

ตัวอย่างเอาท์พุท 2

223


มีสิ่งของอยู่ N ประเภท สิ่งของประเภทที่ i มีน้ำหนัก w_i และมีค่า v_i โดยแต่ละประเภทจะมีสิ่งของอยู่ 10^{10} ชิ้น
ทาคาฮาชิจะเลือกสิ่งของบางชิ้นและใส่ลงในถุงที่มีความจุ W เขาต้องการเพิ่มมูลค่าของสิ่งของที่เลือกไว้สูงสุดโดยหลีกเลี่ยงการเลือกสิ่งของประเภทเดียวกันมากเกินไป ดังนั้น เขาจึงกำหนดความสุขในการเลือกสิ่งของประเภท i จำนวน k_i ว่า k_i v_i - k_i^2 เขาต้องการเลือกสิ่งของเพื่อเพิ่มความสุขรวมให้สูงสุดจากสิ่งของประเภททั้งหมด โดยให้มีน้ำหนักรวมไม่เกิน W คำนวณความสุขรวมสูงสุดที่เขาสามารถบรรลุได้

อินพุต

อินพุตนี้กำหนดจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N W
w_1 v_1
w_2 v_2
\vdots
w_N v_N

เอาต์พุต

พิมพ์คำตอบ

ข้อจำกัด

- 1 \leq N \leq 3000
- 1 \leq W \leq 3000
- 1 \leq w_i \leq W
- 1 \leq v_i \leq 10^9
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม

ตัวอย่างอินพุต 1

2 10
3 4
3 2

ตัวอย่างเอาต์พุต 1

5

การเลือกรายการประเภท 1 จำนวน 2 รายการและประเภท 2 จำนวน 1 รายการ ความสุขรวมจะเท่ากับ 5 ซึ่งถือเป็นค่าที่เหมาะสมที่สุด ความสุขของประเภทที่ 1 คือ 2 \times 4 - 2^2 = 4 และความสุขของประเภทที่ 2 คือ 1 \times 2 - 1^2 = 1
น้ำหนักรวมคือ 9 ซึ่งอยู่ในขีดจำกัด 10

ตัวอย่างอินพุต 2

3 6
1 4
2 3
2 7

ตัวอย่างเอาต์พุต 2

14

ตัวอย่างอินพุต 3

1 10
1 7

ตัวอย่างเอาต์พุต 3

12

รายการมี N ประเภท รายการประเภทที่ i มีน้ําหนัก w_i และค่า v_i แต่ละประเภทมี 10^{10} รายการ
ทาคาฮาชิจะเลือกสิ่งของบางอย่างและใส่ลงในถุงที่มีความจุ W เขาต้องการเพิ่มมูลค่าของรายการที่เลือกให้สูงสุดในขณะที่หลีกเลี่ยงการเลือกรายการประเภทเดียวกันมากเกินไป ดังนั้นเขาจึงกําหนดความสุขในการเลือกรายการประเภท i k_i เป็น k_i v_i - k_i^2 เขาต้องการเลือกสิ่งของเพื่อเพิ่มความสุขโดยรวมให้กับทุกประเภทในขณะที่รักษาน้ําหนักรวมไว้ที่ W มากที่สุด คํานวณความสุขโดยรวมสูงสุดที่เขาสามารถทําได้

อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N W
w_1 v_1
w_2 v_2
\vdots
w_N v_N

ผลิตภัณฑ์

พิมพ์คําตอบ

ข้อจํากัด

- 1 \leq N \leq 3000
- 1 \leq W \leq 3000
- 1 \leq w_i \leq W
- 1 \leq v_i \leq 10^9
- ค่าอินพุตทั้งหมดเป็นจํานวนเต็ม

ตัวอย่างข้อมูลนำเข้า 1

2 10
3 4
3 2

ตัวอย่างเอาต์พุต 1

5

เมื่อเลือก 2 รายการของประเภท 1 และ 1 รายการของประเภท 2 ความสุขทั้งหมดสามารถเป็น 5 ซึ่งเหมาะสมที่สุด
ในที่นี้ ความสุขสําหรับประเภท 1 คือ 2 \times 4 - 2^2 = 4 และความสุขสําหรับประเภท 2 คือ 1 \times 2 - 1^2 = 1
น้ําหนักรวมคือ 9 ซึ่งอยู่ในความจุ 10

ตัวอย่างข้อมูลนำเข้า 2

3 6
1 4
2 3
2 7

ตัวอย่างเอาต์พุต 2

14

ตัวอย่างข้อมูลนำเข้า 3

1 10
1 7

ตัวอย่างเอาต์พุต 3

12


มีจุด P_1,P_2,\ldots,P_N, Q_1,Q_2,\ldots,Q_N จำนวน 2N จุดบนระนาบสองมิติ
พิกัดของ P_i คือ (A_i, B_i) และพิกัดของ Q_i คือ (C_i, D_i)
ไม่มีจุดสามจุดที่ต่างกันอยู่บนเส้นตรงเดียวกัน
กำหนดว่ามีการเรียงสับเปลี่ยน R = (R_1, R_2, \ldots, R_N) ของ (1, 2, \ldots, N) ที่ตรงตามเงื่อนไขต่อไปนี้หรือไม่ หากมี R ดังกล่าว ให้หาค่าหนึ่ง

- สำหรับแต่ละจำนวนเต็ม i ตั้งแต่ 1 ถึง N ให้ส่วน i เป็นส่วนของเส้นตรงที่เชื่อม P_i และ Q_{R_i} จากนั้น ส่วน i และส่วน j (1 \leq i < j \leq N) จะไม่ตัดกัน

อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N
A_1 B_1
A_2 B_2
\vdots
A_N B_N
C_1 D_1
C_2 D_2
\vdots
C_N D_N

เอาต์พุต

หากไม่มี R ที่ตรงตามเงื่อนไข ให้พิมพ์ -1
หากมี R ดังกล่าว ให้พิมพ์ R_1, R_2, \ldots, R_N โดยคั่นด้วยช่องว่าง หากมีวิธีแก้ปัญหาหลายวิธี คุณสามารถพิมพ์วิธีใดก็ได้

ข้อจำกัด

- 1 \leq N \leq 300
- 0 \leq A_i, B_i, C_i, D_i \leq 5000 (1 \leq i \leq N)
- (A_i, B_i) \neq (A_j, B_j) (1 \leq i < j \leq N)
- (C_i, D_i) \neq (C_j, D_j) (1 \leq i < j \leq N)
- (A_i, B_i) \neq (C_j, D_j) (1 \leq i, j \leq N)
- ไม่มีจุดที่แตกต่างกันสามจุดที่อยู่บนเส้นตรงเดียวกัน
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม

ตัวอย่างอินพุต 1

3
0 0
2 4
4 2
0 2
2 0
4 4

ตัวอย่างเอาต์พุต 1

2 1 3

จุดต่างๆ จะถูกจัดเรียงตามรูปต่อไปนี้

เมื่อกำหนด R = (2, 1, 3) เส้นตรงทั้งสามส่วนจะไม่ตัดกัน นอกจากนี้ คำตอบใดๆ ของ R = (1, 2, 3), (1, 3, 2), (2, 3, 1) และ (3, 1, 2) ถือเป็นคำตอบที่ถูกต้อง

ตัวอย่างอินพุต 2

8
59 85
60 57
72 12
3 27
16 58
41 94
77 64
97 20
32 37
7 2
57 94
35 70
38 60
97 100
5 76
38 8

ตัวอย่างเอาต์พุต 2

3 5 8 2 7 4 6 1

มีจุด 2N จุด P_1,P_2,\ldots,P_N, Q_1,Q_2,\ldots,Q_N บนระนาบสองมิติ
พิกัดของ P_i คือ (A_i, B_i) และพิกัดของ Q_i คือ (C_i, D_i)
ไม่มีจุดสามจุดต่างกันที่อยู่ในเส้นตรงเดียวกัน
จงพิจารณาว่ามีการเรียงลำดับ R = (R_1, R_2, \ldots, R_N) ของ (1, 2, \ldots, N) ที่ทำให้เงื่อนไขต่อไปนี้เป็นจริงหรือไม่ ถ้ามีการเรียงลำดับดังกล่าว จงหาหนึ่งวิธี

- สำหรับแต่ละจำนวนเต็ม i จาก 1 ถึง N ให้เส้นตรง i เป็นเส้นตรงที่เชื่อมต่อ P_i และ Q_{R_i} จากนั้น เส้นตรง i และเส้นตรง j (1 \leq  i < j \leq N) จะไม่มีทางตัดกัน

ข้อมูลนำเข้า

ข้อมูลนำเข้าจะได้รับจากมาตรฐานนำเข้าในรูปแบบดังนี้:
N
A_1 B_1
A_2 B_2
\vdots
A_N B_N
C_1 D_1
C_2 D_2
\vdots
C_N D_N

ผลลัพธ์

ถ้าไม่มี R ที่เป็นไปตามเงื่อนไข ให้พิมพ์ -1
ถ้ามี R ดังกล่าว ให้พิมพ์ R_1, R_2, \ldots, R_N โดยคั่นด้วยช่องว่าง ถ้ามีหลายวิธี คุณสามารถพิมพ์วิธีใดก็ได้

ข้อจำกัด

- 1 \leq N \leq 300
- 0 \leq A_i, B_i, C_i, D_i \leq 5000 (1 \leq i \leq N)
- (A_i, B_i) \neq (A_j, B_j) (1 \leq i < j \leq N)
- (C_i, D_i) \neq (C_j, D_j) (1 \leq i < j \leq N)
- (A_i, B_i) \neq (C_j, D_j) (1 \leq i, j \leq N)
- ไม่มีจุดสามจุดต่างกันที่อยู่ในเส้นตรงเดียวกัน
- ค่าข้อมูลนำเข้าทั้งหมดเป็นจำนวนเต็ม

ตัวอย่างข้อมูลนำเข้า 1

3
0 0
2 4
4 2
0 2
2 0
4 4

ตัวอย่างผลลัพธ์ 1

2 1 3

จุดถูกจัดเรียงดังแสดงในรูปต่อไปนี้

การตั้งค่า R = (2, 1, 3) จะทำให้เส้นสามเส้นไม่ตัดกัน นอกจากนี้ R = (1, 2, 3), (1, 3, 2), (2, 3, 1) และ (3, 1, 2) ก็เป็นคำตอบที่ถูกต้อง

ตัวอย่างข้อมูลนำเข้า 2

8
59 85
60 57
72 12
3 27
16 58
41 94
77 64
97 20
32 37
7 2
57 94
35 70
38 60
97 100
5 76
38 8

ตัวอย่างผลลัพธ์ 2

3 5 8 2 7 4 6 1

มี 2N จุด P_1,P_2,\ldots,P_N, Q_1,Q_2,\ldots,Q_N บนระนาบสองมิติ
พิกัดของ  P_i คือ (A_i, B_i) และพิกัดของ Q_i คือ (C_i, D_i).
ไม่มีสามจุดที่แตกต่างกันอยู่บนเส้นตรงเดียวกัน
ตรวจสอบว่ามีการเรียงสับเปลี่ยน  R = (R_1, R_2, \ldots, R_N) of (1, 2, \ldots, N) ที่เป็นไปตามเงื่อนไขต่อไปนี้ หากมี r เช่นนี้ให้ค้นหา

- สำหรับแต่ละจำนวนเต็ม i จาก 1 ถึง n ให้เซ็กเมนต์ iเป็นกลุ่มบรรทัดที่เชื่อมต่อ P_i และ Q_{R_i} จากนั้นเซ็กเมนต์ i และเซ็กเมนต์ j (1 \ leq i <j \ leq n) ไม่ตัดกัน

ป้อนข้อมูล

อินพุตได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N
A_1 B_1
A_2 B_2
\vdots
A_N B_N
C_1 D_1
C_2 D_2
\vdots
C_N D_N

เอาท์พุท

หากไม่มี r เป็นไปตามเงื่อนไขให้พิมพ์ -1
หากมี r เช่นนี้ให้พิมพ์ R_1, R_2, \ldots, R_N คั่นด้วยช่องว่าง หากมีวิธีแก้ปัญหาหลายอย่างคุณสามารถพิมพ์ได้

ข้อ จำกัด

- 1 \leq N \leq 300
- 0 \leq A_i, B_i, C_i, D_i \leq 5000 (1 \leq i \leq N)
- (A_i, B_i) \neq (A_j, B_j) (1 \leq i < j \leq N)
- (C_i, D_i) \neq (C_j, D_j) (1 \leq i < j \leq N)
- (A_i, B_i) \neq (C_j, D_j) (1 \leq i, j \leq N)
- ไม่มีสามจุดที่แตกต่างกันอยู่บนเส้นตรงเดียวกัน
- ค่าอินพุตทั้งหมดเป็นจำนวนเต็ม

อินพุตตัวอย่าง 1

3
0 0
2 4
4 2
0 2
2 0
4 4

ตัวอย่างเอาท์พุท 1

2 1 3

จุดจะถูกจัดเรียงดังแสดงในรูปต่อไปนี้

โดยการตั้งค่า R= (2, 1, 3) สามส่วนของเส้นไม่ข้ามกัน นอกจากนี้ใด ๆ ของ R = (1, 2, 3), (1, 3, 2), (2, 3, 1) และ (3, 1, 2) เป็นคำตอบที่ถูกต้อง

อินพุตตัวอย่าง 2

8
59 85
60 57
72 12
3 27
16 58
41 94
77 64
97 20
32 37
7 2
57 94
35 70
38 60
97 100
5 76
38 8

ตัวอย่างเอาท์พุท 2

3 5 8 2 7 4 6 1


คุณได้รับลำดับจำนวนเต็มสองลำดับ A และ B แต่ละลำดับมีความยาว N เลือกจำนวนเต็ม i, j (1 \leq i, j \leq N) เพื่อเพิ่มมูลค่าของ A_i + B_j ให้สูงสุด

Input

ข้อมูลนำเข้าจะได้รับจาก อินพุตในรูปแบบดังนี้:
N
A_1 A_2 \dots A_N
B_1 B_2 \dots B_N

Output

พิมพ์ค่า A_i + B_j ที่เป็นไปได้สูงสุด

เงื่อนไข

- 1 \leq N \leq 5 \times 10^5
- |A_i| \leq 10^9 (i=1,2,\dots,N)
- |B_j| \leq 10^9 (j=1,2,\dots,N)
- ค่าทั้งหมดที่ป้อนเข้ามาเป็นจำนวนเต็ม

ตัวอย่างข้อมูลนำเข้า 1

2
-1 5
3 -7

ตัวอย่างข้อมูลส่งออก 1

8

สำหรับ (i,j) = (1,1), (1,2), (2,1), (2,2), ค่าของ A_i + B_j คือ 2, -8, 8, -2 ตามลำดับและ (i,j) = (2,1) จะให้ค่าสูงสุด 8

ตัวอย่างข้อมูลนำเข้า 2

6
15 12 3 -13 -1 -19
7 17 -13 -10 18 4

ตัวอย่างข้อมูลส่งออก 2

33

คุณได้รับลำดับจำนวนเต็มสองลำดับ A และ B แต่ละลำดับมีความยาว N เลือกจำนวนเต็ม i, j (1 \leq i, j \leq N) เพื่อให้ได้ค่าของ A_i + B_j สูงสุด

ข้อมูลนำเข้า

ข้อมูลนำเข้าจะได้รับจาก Standard Input ในรูปแบบดังนี้:
N
A_1 A_2 \dots A_N
B_1 B_2 \dots B_N point

ข้อมูลส่งออก

พิมพ์ค่า A_i + B_j ที่เป็นไปได้สูงสุด

เงื่อนไข

- 1 \leq N \leq 5 \times 10^5
- |A_i| \leq 10^9 (i=1,2,\dots,N)
- |B_j| \leq 10^9 (j=1,2,\dots,N)
- ค่าทั้งหมดที่ป้อนเข้ามาเป็นจำนวนเต็ม

ตัวอย่างข้อมูลนำเข้า 1

2
-1 5
3 -7

ตัวอย่างข้อมูลส่งออก 1

8

สำหรับ (i,j) = (1,1), (1,2), (2,1), (2,2), ค่าของ A_i + B_j คือ 2, -8, 8, -2 ตามลำดับและ (i,j) = (2,1) จะให้ค่าสูงสุด 8

ตัวอย่างข้อมูลนำเข้า 2

6
15 12 3 -13 -1 -19
7 17 -13 -10 18 4

ตัวอย่างข้อมูลส่งออก 2

33

คุณจะได้รับลําดับจํานวนเต็มสองลําดับ A และ B แต่ละลําดับมีความยาว N เลือกจํานวนเต็ม i, j (1 \leq i, j \leq N) เพื่อเพิ่มค่า A_i + B_j ให้สูงสุด

อินพุต

อินพุตจะได้รับจากอินพุตมาตรฐานในรูปแบบต่อไปนี้:
N
A_1 A_2 \dots A_N
B_1 B_2 \dots B_N

เอาต์พุต

พิมพ์ค่าสูงสุดที่เป็นไปได้ของ A_i + B_j

ข้อจํากัด

- 1 \leq N \leq 5 \times 10^5
- |A_i| \leq 10^9 (i=1,2,\dots,N)
- |B_j| \leq 10^9 (j=1,2,\dots,N)
- ค่าอินพุตทั้งหมดเป็นจํานวนเต็ม

ตัวอย่างข้อมูลนำเข้า 1

2
-1 5
3 -7

ตัวอย่างเอาต์พุต 1

8

สําหรับ (i,j) = (1,1), (1,2), (2,1), (2,2) ค่าของ A_i + B_j คือ 2, -8, 8, -2 ตามลําดับ และ (i,j) = (2,1) ได้ค่าสูงสุด 8

ตัวอย่างข้อมูลนำเข้า 2

6
15 12 3 -13 -1 -19
7 17 -13 -10 18 4

ตัวอย่างเอาต์พุต 2

33