Day73: 分割平衡字符串
在一個「平衡字符串」中,'L' 和 'R' 字符的數量是相同的。
給出一個平衡字符串 s,請你將它分割成盡可能多的平衡字符串。
返回可以通過分割得到的平衡字符串的最大數量。
示例 1:
輸入:s = "RLRRLLRLRL"
輸出:4
解釋:s 可以分割為 "RL", "RRLL", "RL", "RL", 每個子字符串中都包含相同數量的 'L' 和 'R'。
示例 2:
輸入:s = "RLLLLRRRLR"
輸出:3
解釋:s 可以分割為 "RL", "LLLRRR", "LR", 每個子字符串中都包含相同數量的 'L' 和 'R'。
示例 3:
輸入:s = "LLLLRRRR"
輸出:1
解釋:s 只能保持原樣 "LLLLRRRR".
來源:力扣(LeetCode)
鏈接:??力扣…?
著作權歸領扣網絡所有。商業轉載請聯系官方授權,非商業轉載請注明出處。
class Solution(object):
def balancedStringSplit(self, s):
temp_count = 0
result = 0
for i in s:
if i == "L":
temp_count += 1
else:
temp_count += -1
if temp_count == 0:
result += 1
return result
def test_balancedStringSplit():
solution = Solution()
assert solution.balancedStringSplit("RLRRLLRLRL") == 4
assert solution.balancedStringSplit("RLLLLRRRLR") == 3
assert solution.balancedStringSplit("LLLLRRRR") == 1