题目描述:
给你一个 正整数 数组 nums
。
Alice 和 Bob 正在玩游戏。在游戏中,Alice 可以从 nums
中选择所有个位数 或 所有两位数,剩余的数字归 Bob 所有。如果 Alice 所选数字之和 严格大于 Bob 的数字之和,则 Alice 获胜。
如果 Alice 能赢得这场游戏,返回 true
;否则,返回 false
。
代码思路:
- 变量初始化:
oneNum
和twoNum
被初始化为整数,用于分别累加满足特定条件的数字。
- 数字分类与累加:
- 遍历整数列表
nums
中的每个数字i
。 - 使用
i%10==0
来判断数字是否以0结尾即判断个位数是否为0。 - 如果数字
i
的个位数为0(即i%10==0
),则将其加到oneNum
上。 - 否则,将数字
i
加到twoNum
上。
- 遍历整数列表
- 结果判断:
- 最后,返回
oneNum != twoNum
的结果,即判断Alice(oneNum
)和Bob(twoNum
)所收集的数字总和是否不相等。
- 最后,返回
代码实现:
python">class Solution(object):def canAliceWin(self, nums):""":type nums: List[int]:rtype: bool"""oneNum = int()twoNum = int()for i in nums:if i%10 == 0:oneNum += ielse:twoNum += ireturn oneNum != twoNum