27. 成對檢查 給定 N個 ( 1 <= N <= 3 ) 字串, 每一個字串M (1 <= len(M) <= 50) 由括號與英文字母組成 括號共有三種: {, }, [, ], (, ) 檢查這字串M中的括號是否成對出現, 如果括號成對出現,代表通過檢查,輸出"pass" 如果括號沒有成對出現,代表未通過檢查,輸出"fail" 並且輸出深度D(1<= D <= 6) 中的所有英文字母 深度:字串由左至右閱讀,深度從0開始,當遇到左括號深度加一層,遇到右括號深度減一層,且字串中括號必須成對出現,深度才成立。 例: {a[b(c)d]e} 深度 1: a, e 深度 2: b, d 深度 3: c 【輸入說明】 第1行:輸入一整數N (1<=N<=3) 第2行:輸入一整數D (1<= D <= 6) 第3~N+2行:輸入一字串 範例輸入說明: 3 (3個字串) 3 (深度3) {b[bc][c(bd)]}(字串1) {q(ac)(df)(bn)r}(字串2) {b{[h]}dc[d(i)a]}(字串3) 【輸出說明】 第1~N行根據輸入的各行字串判斷如下: (1)如果字串內括號成對出現,輸出"pass, " 依照深度要求,接續輸出深度內的所有字母 如果深度要求內沒有任何字母,輸出"EMPTY" (2)如果字串內括號沒有成對出現,輸出"fail" 範例輸出說明: pass, bd (括號皆有成對,且深度要求內也有字母) pass, EMPTY(括號皆有成對,但深度要求內沒有字母) pass, hi (括號皆有成對,且深度要求內也有字母) 【測試資料一】 輸入: 3 3 {[()][]} {}[(]) {{{{{{ 輸出: pass, EMPTY fail fail 【測試資料二】 輸入: 2 1 (he[ad(dsa{fd}asdf)srfa]l(ssd)lo) {(qq{ww}ee){rr}} 輸出: pass, hello pass, EMPTY 【測試資料三】 輸入: 1 2 ([{abc}]qwe({}[qe)qw]hgh) 輸出: fail 【測試資料四】 輸入: 3 4 {a(b[c(d)e][f(g)h]i)(j[k(l)m][n(o)p]q)r} (q[w(e{[q]}r)a][a(s{}d)f]z) [p(o{i})l((j{h}t)j}g{m)h] 輸出: pass, dglo pass, EMPTY fail 【隱藏測試資料一】 輸入: 3 3 (({})) [)(] }}}}}}} 輸出: pass, EMPTY fail fail 【隱藏測試資料二】 輸入: 2 1 (n{d(g[z]n[y]m)w(q)}) ([M{T}f](s)(B)) 輸出: pass, n pass, EMPTY 【隱藏測試資料三】 輸入: 1 2 {([)]} 輸出: fail 【隱藏測試資料四】 輸入: 3 3 ({i}s[m{k}y]k{h}d{h{q}}) ((l)f{k()p({d})p}u) [h{(ah)b}{] 輸出: pass, kq pass, EMPTY fail