题目描述

给定一个已完成的井字游戏的 3x3 矩阵,创建一个函数,该函数返回游戏是 “X”“O” 还是 “Draw”,其中 "X""O" 表示它们在矩形中,"E" 表示一个空白点。如果返回 "X""O" ,则表示 "X"胜利 或 "O" 胜利。
输入格式
输入一个数组,表示一个已完成的井字游戏的 3x3 矩阵;
输出格式
输出一个字符串,表示 O 获胜, X 胜利 ,或者平局。

输入输出样例1

输入


  1. [
  2. ["X", "O", "X"],
  3. ["O", "X", "O"],
  4. ["O", "X", "X"]
  5. ]

输出
X

输入输出样例2

输入


  1. [
  2. ["X", "X", "O"],
  3. ["O", "O", "X"],
  4. ["X", "X", "O"]
  5. ]

输出
Draw

说明提示

确保如果 O 获胜,则返回字母 "O" 而不是整数 0(零),如果是平局,请确保返回大写的单词 "Draw"。如果您返回 "X" or "O",请确保它们也大写。

思路:
判断井字棋的胜利,我们只需判断八条线上的元素是否一致即可:三行,三列和两个对角线。  board = input()
board = eval(board)
def tic_tac_toe(b):  #********** Begin **************   # 先将八条线上的元素归纳到一个列表中。  lists = [b[0], b[1], b[2],  [b[0][0], b[1][0], b[2][0]],  [b[0][1], b[1][1], b[2][1]],  [b[0][2], b[1][2], b[2][2]],  [b[0][0], b[1][1], b[2][2]],  [b[0][2], b[1][1], b[2][0]]]  for i in lists:  # 循环列表中的元素  if len(set(i)) == 1:  # 判断八条线上的元素是否一致。如果有一致的,则返回该条线上的第一个元素。  return i[0]  # 否则返回 Draw 。  return "Draw"#********** End ************
print(tic_tac_toe(board))  

python井字游戏相关推荐

  1. python 井字游戏

    设计一个算法,判断玩家是否赢了井字游戏.输入是一个 N x N 的数组棋盘,由字符" ","X"和"O"组成,其中字符" &quo ...

  2. 用 Python 开发游戏——Python井字游戏

  3. Kafka Streams开发者指南

    Kafka Streams 1.1 概述 Kafka Streams是一个客户端程序库,用于处理和分析存储在Kafka中的数据,并将得到的数据写回Kafka或发送到外部系统.Kafka Stream基 ...

  4. python人机对战_【人机对战】用python打造经典井字游戏

    井字游戏是一个经典的棋盘游戏, 在一个3x3的棋盘上面玩, 谁的棋子先连成一条线就赢了, 我直接拿上次在[人机对战]用python打造经典黑白棋游戏写的程式来改很快就改出来了. 我的版本将程式逻辑拆成 ...

  5. 用 Python 做个简单的井字游戏

    在这个教程中,我将展示如何利用Python来做一个井字游戏.这将包括函数.列表.if语句.while循环.for循环以及错误处理等等. 首先,我们将创建两个函数,第一个函数将会打印出井字游戏的背景模板 ...

  6. 十个步骤简单带你用Python实现一个井字游戏

    前言 最近正在学习Python,所以我会出一个关于Python实例的系列文章. 文章里面有什么不对的地方还请大家多多指教 井字游戏总共分为一下十个步骤 第一步 编写一个可以打印出地图的函数.将棋盘设置 ...

  7. python编写井字棋_编写井字游戏

    python编写井字棋 Programming computer games may be the most technically challenging (and possibly the bes ...

  8. 用python制作的游戏有哪些_用 Python 做个简单的井字游戏

    在这个教程中,我将展示如何利用Python来做一个井字游戏.这将包括函数.列表.if语句.while循环.for循环以及错误处理等等. 首先,我们将创建两个函数,第一个函数将会打印出井字游戏的背景模板 ...

  9. python如何打印井号_井字游戏(python)

    问题描述 设计一个算法,判断玩家是否赢了井字游戏.输入是一个 N x N 的数组棋盘,由字符" ","X"和"O"组成,其中字符" ...

最新文章

  1. NVIDIA深度学习Tensor Core性能解析(上)
  2. springmvc二十三:日期格式化
  3. C#请求Post接口
  4. Ruby/Rails 生态环境、社区、资料 Ecosystem
  5. firewalld的防火墙
  6. 段的创建表user_segments
  7. linux 声卡权限,archlinux的声卡问题如何解决
  8. java实现Comparable接口和Comparator接口,并重写compareTo方法和compare方法
  9. php求完数,php算法:求完全数 | 学步园
  10. 高鸿股份与鸿蒙,高鸿股份(000851)个股分析_牛叉诊股_同花顺财经
  11. 字符流读取的全部方法
  12. idea中ssm集成freemark_基于SSM框架的迷你天猫商城
  13. 允许使用抽象类类型 isearchboxinfo 的对象_Java面向对象之final、abstract抽象、和变量生命周期...
  14. aso优化应用市场推广方案到底怎么写
  15. Youtube下载神器YT
  16. 微信视频号100w播放收入1000+的变现方式
  17. 微信小程序编写一个试卷demo
  18. Centos7安装Nginx监控组件Nginx-rrd【二】
  19. 深度至尊之三信技术GHOST XP SP3装机精英白金版V11.3(NTFS)
  20. 小米4c+android+6,小米4c有什么接口?小米4c有HDMI接口吗?

热门文章

  1. java weakhashmap_Java中关于WeakReference和WeakHashMap的理解
  2. 2021.06.02税收和补贴问题
  3. 面试系列(五):寒武纪 深度学习框架研发工程师
  4. “欧内的手,好汉?”,降噪、反相人声、制作消音伴奏,看懂这篇就够了
  5. MQTT的RETAIN标志位的作用
  6. 基于java制作一个飞机小游戏(学习心得)
  7. 疯牛 nyist586(二分答案)
  8. 美妆品牌巴黎欧莱雅官宣Kendall Jenner成为品牌代言人
  9. React事件处理及事件流
  10. 13.导数定义及可导与连续的关系