มีคนให้สตริงเรา แต่ตัวละครที่เหมือนวงเล็บถูกเปลี่ยนให้เป็นสตริงปกติและเราไม่รู้ว่ามีอะไรหรือแม้แต่มีกี่ตัว สิ่งที่เรารู้ก็คือว่าถ้าL1,L2,L3,...,LN
เป็นวงเล็บปีกกาด้านซ้ายที่R1,R2,R3,...,RN
แตกต่างกันและเป็นวงเล็บปีกกาด้านขวาที่แตกต่างกันทุกตัวจะแตกต่างกัน (2N วงเล็บปีกกาที่แตกต่างกัน) สตริงจะใช้ได้ถ้า if เป็นหนึ่งใน (+ คือ
L1+X+R1
,L2+X+R2
, ... ,LN+X+RN
ซึ่งX
เป็นสตริงที่ถูกต้องX+Y
ที่ไหนX
และY
เป็นสตริงที่ถูกต้องอักขระเดี่ยวใด ๆ ที่ไม่ใช่อักขระวงเล็บเหลี่ยม
สตริงว่าง
เรารู้ว่าพวกเขาเริ่มต้นด้วยสตริงที่ถูกต้องก่อนที่พวกเขาจะเปลี่ยนวงเล็บและพวกเขาไม่ได้เปลี่ยนเป็นอักขระใด ๆ ที่มีอยู่แล้วในสตริง มีอย่างน้อยหนึ่งคู่สำหรับแต่ละวงเล็บเช่นกัน คุณสามารถสร้างอักขระตัวใดที่คู่ซ้ายและขวาในวงเล็บเดิม (ค้นหาLi
และปฏิบัติRi
ตามเงื่อนไขที่กำหนด)?
เอาต์พุตคู่ของอักขระที่เป็นวงเล็บเหลี่ยม ตัวอย่างเช่นถ้า(){}[]
จริง ๆ แล้วเป็นอักขระวงเล็บเหลี่ยมคุณอาจส่งออก(){}[]
หรือ{}[]()
หรือ[](){}
ฯลฯ อาจมีหลายวิธีในการทำสตริงคุณจะต้องส่งคืนเฉพาะกรณีที่ไม่มีการกำหนดค่าวงเล็บด้วยคู่เพิ่มเติม (ดูตัวอย่าง) โปรดทราบว่าสตริงผลลัพธ์ควรมีความยาวเท่ากันเสมอ
ตัวอย่าง:
abcc
- c
ไม่สามารถยึดเนื่องจากไม่มีตัวละครอื่น ๆ ที่มีทั้งสองเกิดขึ้น แต่อาจจะเป็นคู่วงเล็บดังนั้นคุณจะส่งออกว่าab
ab
fffff
- สตริงใด ๆ ที่มีอักขระไม่เกินหนึ่งตัวต้องไม่มีเครื่องหมายวงเล็บดังนั้นคุณจะส่งคืนสตริงว่างหรือไม่มีอะไรส่งออก
aedbedebdcecdec
- สตริงนี้ไม่สามารถมีวงเล็บใด ๆ ได้เนื่องจากมี 1 a, 2 bs, 3 cs, 4 ds และ 5 es ดังนั้นจึงไม่มีอักขระสองตัวที่เกิดขึ้นในจำนวนครั้งเท่ากันซึ่งเป็นข้อกำหนดที่จะต้องมีวงเล็บ
abcd
- การมอบหมายงานที่เป็นไปได้ab
, cd
, abcd
, cdab
, adbc
, bcad
, ac
, ad
, bc
และbd
(เช่นเดียวกับที่ได้รับมอบหมายที่ว่างเปล่าซึ่งทั้งหมดของพวกเขามี) แต่คุณจะต้องกลับมาเป็นหนึ่งในการมอบหมายงานที่ยาวที่สุดเพื่อให้คุณจะต้องกลับabcd
, cdab
, หรือadbc
bcad
aabbcc
, abc
- เหล่านี้ทั้งสองมีab
, ac
และbc
เป็นคู่ที่ถูกต้อง คุณต้องส่งคืนหนึ่งในคู่เหล่านี้ไม่สำคัญ
abbac
- a และ b มีจำนวนอักขระเท่ากัน แต่ไม่สามารถใช้งานได้จริงเนื่องจากหนึ่งในนั้นเกิดขึ้นกับทั้งด้านซ้ายและด้านขวาของสิ่งอื่นที่เกิดขึ้น ไม่ต้องส่งคืน
aabcdb
- cd
และab
เป็นที่แน่นอนสองคู่วงเล็บเพื่อการส่งออกอย่างใดอย่างหนึ่งหรือcdab
abcd
abcdacbd
- เพียงหนึ่งคู่สามารถทำได้ในครั้งเดียว แต่ab
, ac
, bd
, cd
และad
มีทุกคู่ที่เป็นไปได้คุณสามารถกลับ ไม่ว่าคุณจะเลือกคู่แบบใดมันก็มีตัวอย่างที่ตัวละครตัวหนึ่งอยู่ในตัวมันซึ่งห้ามคู่อื่นยกเว้นในกรณีad
ที่คู่อื่น ๆbc
และcb
ไม่สามารถอยู่คนเดียวได้เช่นกัน ad
กับ
นี่คือรหัสกอล์ฟดังนั้นรหัสที่สั้นที่สุดในหน่วยไบต์ชนะ อินพุตจาก STDIN ถ้าเป็นไปได้สำหรับภาษาของคุณ หากเป็นไปไม่ได้ให้ระบุวิธีป้อนข้อมูลในคำตอบของคุณ
abcd
เอาต์พุตadbc
ก็จะยอมรับได้ใช่ไหม