华为OD-C卷-分割均衡字符串[100分]
题目描述
均衡串定义:字符串中只包含两种字符,且这两种字符的个数相同。
给定一个均衡字符串,请给出可分割成新的均衡子串的最大个数。
约定:字符串中只包含大写的 X 和 Y 两种字符。
输入描述
输入一个均衡串。
- 字符串的长度:[2, 10000]。
- 给定的字符串均为均衡字符串
输出描述
输出可分割成新的均衡子串的最大个数。
备注
分割后的子串,是原字符串的连续子串
用例1
输入
XXYYXY
输出
2
说明
XXYYXY可分割为2个均衡子串,分别为:XXYY、XY
解题思路:
循环遍历字符串,统计遇到的X和Y字符的数量,当X字符和Y字符数量相等时,均衡字符串数量+1即可。
Python代码实现
s = input()
cntX = 0
cntY = 0
ans = 0
for c in s:
if c == 'X':
cntX += 1
else:
cntY += 1
if cntX == cntY:
ans += 1
print(ans)
原文地址:https://blog.csdn.net/weixin_42433507/article/details/137658389
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!