有效括號字串為空 ("")、"(" + a + 「)」 或 a + b,其中 a 和 b 都是有效的括號字串,+ 代表字串的連線。例如,"","()","(())()" 和 「(()(()))」 都是有效的括號字串。
如果有效字串 s 非空,且不存在將其拆分為 s = a+b 的方法,我們稱其為原語(primitive),其中 a 和 b 都是非空有效括號字串。
給出乙個非空有效字串 s,考慮將其進行原語化分解,使得:s = p_1 + p_2 + … + p_k,其中 p_i 是有效括號字串原語。
對 s 進行原語化分解,刪除分解中每個原語字串的最外層括號,返回 s 。
示例 1:
輸入:"(()())(())"
輸出:"()()()"
解釋:輸入字串為 「(()())(())」,原語化分解得到 「(()())」 + 「(())」,
刪除每個部分中的最外層括號後得到 「()()」 + 「()」 = 「()()()」。
示例 2:
輸入:"(()())(())(()(()))"
輸出:"()()()()(())"
解釋:輸入字串為 「(()())(())(()(()))」,原語化分解得到 「(()())」 + 「(())」 + 「(()(()))」,
刪除每隔部分中的最外層括號後得到 「()()」 + 「()」 + 「()(())」 = 「()()()()(())」。
示例 3:
輸入:"()()"
輸出:""
解釋:輸入字串為 「()()」,原語化分解得到 「()」 + 「()」,
刪除每個部分中的最外層括號後得到 「」 + 「」 = 「」。
s.length <= 10000
s[i] 為 「(」 或 「)」
s 是乙個有效括號字串
class
solution
else st.
pop();
}}}return ans;}}
;
class
solution
}return ans;}}
;
1021 刪除最外層的括號
有效括號字串為空 a 或 a b,其中 a 和 b 都是有效的括號字串,代表字串的連線。例如,和 都是有效的括號字串。如果有效字串 s 非空,且不存在將其拆分為 s a b 的方法,我們稱其為原語 primitive 其中 a 和 b 都是非空有效括號字串。給出乙個非空有效字串 s,考慮將其進行原語...
1021 刪除最外層的括號
有效括號字串為空 a 或 a b,其中 a 和 b 都是有效的括號字串,代表字串的連線。例如,和 都是有效的括號字串。如果有效字串 s 非空,且不存在將其拆分為 s a b 的方法,我們稱其為原語 primitive 其中 a 和 b 都是非空有效括號字串。給出乙個非空有效字串 s,考慮將其進行原語...
1021 刪除最外層的括號
1021.刪除最外層的括號 有效括號字串為空 a 或 a b,其中 a 和 b 都是有效的括號字串,代表字串的連線。例如,和 都是有效的括號字串。如果有效字串 s 非空,且不存在將其拆分為 s a b 的方法,我們稱其為原語 primitive 其中 a 和 b 都是非空有效括號字串。給出乙個非空有...