Python 将字符串分隔为R和L字符数相等的平衡子字符串
作为家庭作业,我需要编写一个程序,不断提示用户输入平衡字符串,直到获得有效输入。在本程序中,平衡字符串定义为具有非零、相等数量的字符“R”(大写)和字符“L”(大写),而不管是否存在其他字符 然后,程序将平衡输入字符串分离/划分为尽可能多的平衡子字符串,并生成它们的列表 例如: 输入:Python 将字符串分隔为R和L字符数相等的平衡子字符串,python,python-3.x,algorithm,loops,Python,Python 3.x,Algorithm,Loops,作为家庭作业,我需要编写一个程序,不断提示用户输入平衡字符串,直到获得有效输入。在本程序中,平衡字符串定义为具有非零、相等数量的字符“R”(大写)和字符“L”(大写),而不管是否存在其他字符 然后,程序将平衡输入字符串分离/划分为尽可能多的平衡子字符串,并生成它们的列表 例如: 输入: 请输入一个包含相等数字或“R”和“L”的字符串:rlab 输出: ['RL','RL','RL','RL','RL','RLab'] 我对如何实现这段代码感到困惑。我知道如何找到输入中是否存在R或L,但仅此而
请输入一个包含相等数字或“R”和“L”的字符串:rlab
输出:
['RL','RL','RL','RL','RL','RLab']
我对如何实现这段代码感到困惑。我知道如何找到输入中是否存在R或L,但仅此而已。我不需要全部代码,只需要一个起点。这里是解决这个问题的算法的起点:
- 维持一个用0初始化的变量
余额
- 创建一个空字符串
temp
- 迭代输入字符串中的每个字符:
- 如果字符为
则将R
余额增加1
- 如果字符为
则将L
余额减少1
- 将字符附加到
temp
- 如果
为0且balance
包含任何temp
或L
字符,则将R
添加到结果列表中,并将其重置为空字符串temp
- 如果字符为
[“RL”+i代表s.split(“RL”)中的i]