checkio Xs and Os Referee

本文介绍了一个简单的井字游戏胜负判断算法。通过遍历游戏盘面的每行、每列及两条对角线来判断是否有玩家获胜。若一行、一列或对角线上的所有标记都相同且不为空,则该标记对应的玩家获胜;若所有位置都被填满但无人获胜则为平局。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

井字游戏,有时也被称为“进攻和防守”,是一个两人玩家(X和O)轮流标志着3×3的网格的空间的连珠游戏。最先在任意一条直线(水平线,垂直线或对角线)上成功连接三个标记的一方获胜。

但我们不去玩这个游戏。你将是这个游戏的裁判。你被赋予游戏的结果,以及你必须判断游戏是平局还是有人胜出,以及谁将会成为最后的赢家。如果X玩家获胜,返回“X”。如果O玩家获胜,返回“O”。如果比赛是平局,返回“D”。


def checkio(game_result):

    for row in game_result:
        if row[0] == row[1] == row[2] != ".":
            return row[0]
    for i in range(len(game_result)):
        if game_result[0][i] == game_result[1][i] == game_result[2][i] != ".":
            return game_result[0][i]
    if game_result[0][0] == game_result[1][1] == game_result[2][2] != ".":
        return game_result[0][0]
    if game_result[0][2] == game_result[1][1] == game_result[2][0] != ".":
        return game_result[0][2]
    return "D"
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AceFreeze

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值