相信有乖乖寫作業的大家對於 Parentheses Balance 一定不陌生,但是紅線真是太受不了題目把 " ( [ ] ) " 也視為正確了!中括號怎麼可以出現在小括號內呢?!為了導正大家錯誤的觀念,紅線除了要求大家判斷括號有沒有合法匹配正確外,也要判斷大小括號的順序對不對。
合法匹配的定義:
1.該字串為一個空字串
2.如果A和B都為正確的運算式,則AB也為正確的運算式,
3.如果A為正確的運算式,則 (A) 及 [A] 及 {A} 都為正確的運算式。
紅線對順序的要求只有下列兩個:
1.( )內不可以有[ ]或{ }
2.[ ]內不可以有{ }
每組測資一行,長度不超過2000字元,當中只會包含 ( , ), [ , ] , { , }六種符號。Input 以EOF為結尾。
每組測資輸出一行,若合法匹配而且符合紅線的要求,輸出 "Valid",否則輸出"Invalid" 。