算法题猜数字-Python实现

本文介绍了四个不同的Python解决方案来解决猜数字算法问题。甲乙两人分别从1, 2, 3中随机抽取三次,比较他们猜对的次数。文章通过四种思路展示代码实现,包括使用zip、直接对比、map函数以及简单的循环对比。作者欢迎读者分享更优的实现方法。" 119526548,10537407,小程序视频上传到服务器实战指南,"['微信小程序', '视频处理', '服务器配置', '华为云服务', '数据安全']
摘要由CSDN通过智能技术生成

今天刷的第一道算法题,先拿一道简单点的试试手,这道题目的要求是:

两个人甲乙在猜数字,甲先从1,2,3三个数字中随机抽3次,结果是guess。乙随后也随机抽三次,结果是answer。然后对比甲乙两个人的结果。示例如下:

guess:[1,2,3], answer: [1, 2, 3]

那么结果就是猜对了3次

guess: [1,2,3] answer:[3,2,1]

那么结果就是猜对了1次

guess: [1,2,3], answer:[3, 3,1]

那么结果就是猜对了0次

即将guess和answer两个作为参数输入,返回猜对的次数。

我想出来的几个答案如下所示:

答案1:

class Solution:
    def game(self, guess: List[int], answer: List[int]) -> int:
        count = 0
        for i in zip(guess, answer):
            if i[0] == i[1]:
                count += 1
        return count

思路是:使用zip将两个列表进行组合,返回每个列表中单个元素组成的元组,然后循环对比。如果相等就将临时变量值+1,最终返回统计结果。

 

答案2:

class Solution:
    def game(self, guess: List[int], answer: List[int]) -> int:
        count = 0
        for i i
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值