公牛和母牛是一个猜数字游戏,其中一个玩家(称为“公牛”)选择一个四位数作为答案,另一个玩家(称为“母牛”)尝试猜出这个数字。每次猜测后,公牛会给出两个数字:一个表示数字正确且位置正确的个数(称为“公牛数”),另一个表示数字正确但位置不正确的个数(称为“母牛数”)。
将这个游戏转化为函数可以使代码更加模块化和可重用。下面是一个示例的函数实现:
def calculate_bulls_and_cows(answer, guess):
bulls = 0
cows = 0
answer_digits = [int(digit) for digit in str(answer)]
guess_digits = [int(digit) for digit in str(guess)]
for i in range(len(answer_digits)):
if answer_digits[i] == guess_digits[i]:
bulls += 1
elif guess_digits[i] in answer_digits:
cows += 1
return bulls, cows
这个函数接受两个参数:答案(answer)和猜测(guess),并返回公牛数(bulls)和母牛数(cows)。
在函数内部,我们首先将答案和猜测转化为数字列表,以便进行比较。然后,我们使用一个循环遍历答案的每一位数字。如果数字既在答案中又在猜测中,并且位置相同,则增加公牛数。如果数字在答案中但位置不同,则增加母牛数。
这个函数可以用于任何需要判断公牛和母牛数的场景,例如猜数字游戏、密码破解等。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云