已关闭。此问题需要超过focused。当前不接受答案。
**想要改进此问题吗?**更新此问题,使其仅关注editing this post的一个问题。
8小时前关门了。
Improve this question
我需要一些帮助与下面的小黄人游戏的代码:凯文和史都华想玩“小黄人游戏”。
游戏规则
两个玩家都有相同的字符串,两个玩家都要用字符串的字母组成子字符串。斯图尔特要用辅音字母组成单词。凯文要用元音字母组成单词。当两个玩家都完成了所有可能的子字符串后,游戏结束。
def minion_game(string):
# your code goes here
n = len(string)
comb = ((n)*(n+1))/2
count_k = 0
count_s = 0
count_k = sum([len(string[i:]) for i in range(len(string)) if string[i] in "AEIOU"])
count_s = comb - count_k
if count_s == count_k:
print("Draw")
elif count_s > count_k:
print("Stuart", int(count_s) )
else:
print("Kevin", int(count_k))
这满足了所有测试用例,除了一个由于时间限制超过,有人能帮我简化这个代码吗?
1条答案
按热度按时间q8l4jmvw1#
这个函数取
string
,复制它的一个子字符串,然后丢弃这个副本,因为你知道n
是整个字符串的长度,string[i:]
是字符串,但是从位置i
开始,你知道len(string[i:])
是n - i
,所以用n - i
替换那个不必要的字符串副本。