• 大爽Python入门练习题 21 检查五子相连


    大爽Python入门练习题总目录

    第二章 中期练习题 中等 第1题

    题目

    情景介绍

    五子棋的游戏,很多人应该熟悉。
    其游戏规则是,横竖或者斜着,有五个相同的子相连,对应的玩家获胜。
    五子棋是一个二维面板,要检查是否有玩家获胜。
    要检查所有行,列,对角线上,是否有五个相同的子相邻。

    这里我们对问题进行简化。
    从问题中,抽离出一个子问题,来思考与练习:
    检查一个列表中,是否有相邻五个子都是一种棋子。

    简介

    实现一个函数check_five(lst, c)
    接受以下两个参数:

    • lst:列表,由棋子"X""O",和空格子" " 三种符号组成。
    • c: 棋子字符,"X""O"之一

    返回一个布尔值:
    如果有五个相邻的c棋子,则返回True
    否则返回False

    示例

    示例一

    lst = ['X', 'O', ' ', 'X', 'X', 'X', ' ', 'X', ' ', 'O', ' ', 'O', 'X']
    c = "X"
    print(check_five(lst, c))
    

    输出为

    False
    

    示例二

    lst = [' ', 'O', ' ', 'X', 'O', 'O', 'O', 'O', 'O', ' ', ' ', 'O', 'X']
    c = "O"
    print(check_five(lst, c))
    

    输出为

    True
    

    分割线

    本小段没有实际意义,
    仅用于分隔题目和答案。
    防止学生无意中直接看到答案,
    影响思路。



















    答案

    def check_five(lst, c):
        count = 0
        for item in lst:
            if item == c:
                count += 1
    
                if count >= 5:
                    return True
            else:
                count = 0
    
        return False
    
  • 相关阅读:
    数据库事务
    数据库锁
    数据库隔离级别
    数据库:表表达式
    数据库视图
    ASP.NET MVC : 文件上传
    浅谈Jquery,delegate()方法
    mvcAutoMapper
    MVC使用 AutoFac 实现自动注册
    数据库存储过程
  • 原文地址:https://www.cnblogs.com/BigShuang/p/15671108.html
Copyright © 2020-2023  润新知