题目描述:
给你一个仅由数字 0 - 9 组成的字符串 num。如果偶数下标处的数字之和等于奇数下标处的数字之和,则认为该数字字符串是一个 平衡字符串。
如果 num 是一个 平衡字符串,则返回 true;否则,返回 false。
代码思绪:
- 初始化变量:
- n:字符串 num 的长度。
- num1 和 num2:分别用于存储偶数索引和奇数索引上数字的和,初始值都为 0。
- 遍历字符串:
- 使用一个 for 循环遍历字符串 num 的每个字符。
- 在每次迭代中,通过 i % 2 判断当前索引 i 是偶数还是奇数。
- 如果 i % 2 == 0,说明当前索引是偶数,将当前字符(转换为整数)加到 num1 上。
- 如果 i % 2 != 0(即 i 是奇数),将当前字符(转换为整数)加到 num2 上。
- 比较和返回效果:
- 在遍历完所有字符后,比较 num1 和 num2 的值。
- 如果它们相称,说明偶数索引和奇数索引上的数字之和相称,返回 True,表示字符串是平衡的。
- 如果它们不相称,返回 False,表示字符串不是平衡的。
代码实现:
- class Solution:
- def isBalanced(self, num: str) -> bool:
- n = len(num)
- num1 = num2 = 0
- for i in range(n):
- if i % 2 == 0:
- num1 += int(num[i])
- else:
- num2 += int(num[i])
- if num1 == num2:
- return True
- else:
- return False
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |