1. 解题思路
这一题稍微分析一下之后就会发现,这个游戏有且只有一种情况Bob才能够赢,即原始字符串当中不存在元音字母的情况,否则假设其中有奇数个元音字母,Alice一次性全部取走即可,如果存在偶数个元音字母,此时alice取完一次之后,必然还剩奇数个元音字母,Bob无法一次取完,然后问题就有变成了剩余奇数个元音字母的情况,Alice于是必胜。
因此,我们只需要判断一下字符串当中的元音字母个数是否为0即可。
2. 代码实现
给出python代码实现如下:
class Solution:
def doesAliceWin(self, s: str) -> bool:
cnt = Counter(s)
s = sum(cnt[v] for v in "aeiou")
return s != 0
提交代码评测得到:耗时101ms,占用内存17.5MB。