• The four Day 给出一个平衡字符串,将它分割成尽可能多的平衡字符串


    """
    在一个「平衡字符串」中,'L' 和 'R' 字符的数量是相同的。
    
    给出一个平衡字符串 s,请你将它分割成尽可能多的平衡字符串。
    
    返回可以通过分割得到的平衡字符串的最大数量。
    
    示例 1:
    
    输入:s = "RLRRLLRLRL"
    输出:4
    解释:s 可以分割为 "RL", "RRLL", "RL", "RL", 每个子字符串中都包含相同数量的 'L' 和 'R'。
    
    来源:力扣(LeetCode)
    链接:https://leetcode-cn.com/problems/split-a-string-in-balanced-strings
    著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
    """
    """
    @author : jiyanjiao
    @date :2019-10-24
    """
    
    
    class Solution(object):
        def balancedStringSplit(self, s):
            """
            :type s: str
            :rtype: int
            """
            count = 0
            count_L = 0
            count_R = 0
            flag = 0
            
            s_list = list(s)
            for s_ in s:
                if s_ == 'L':
                    count_L += 1
                else:
                    count_R += 1
                if count_L == count_R:
                    count += 1
                    total = count_L + count_R
                    # 用flag来标记上次已经识别到的位置
                    for i in range(flag, total):
                        print(s_list[i], end='')
                    print(',', end=' ')
                    flag = total
            return count
     
        
    if __name__ == '__main__':
        s = Solution()
        s.balancedStringSplit("RLRRLLRLRL")
  • 相关阅读:
    ASCII编码表
    OpenMP使用笔记
    2022.02.21软件更新公告
    VC调用giflib(2):EGifOpen、DGifOpen用法
    VC调用giflib(4):内存泄漏与功能缺失
    2022.02.14软件更新公告
    VC调用giflib(1):VC编译giflib
    2022.03.17软件更新公告
    VC调用giflib(3):GIF文件编、解码
    一道算法面试题接雨水
  • 原文地址:https://www.cnblogs.com/jiyanjiao-702521/p/11732776.html
Copyright © 2020-2023  润新知