1021 刪除最外層的括號

2021-10-02 13:01:39 字數 1089 閱讀 9609

有效括號字串為空 ("")、"(" + 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 都是非空有效括號字串。給出乙個非空有...