1812 判断国际象棋棋盘中一个格子的颜色(判断)

该博客介绍了一个编程问题,要求根据给定的国际象棋棋盘坐标判断格子是白色还是黑色。提供的代码实现通过检查字母和数字的奇偶性来确定格子颜色,对于字母为'a'、'c'、'e'、'g'且数字为奇数的格子,或者字母为'b'、'd'、'f'且数字为偶数的格子,返回黑色;反之则返回白色。

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

1. 问题描述:

给你一个坐标 coordinates ,它是一个字符串,表示国际象棋棋盘中一个格子的坐标。下图是国际象棋棋盘示意图。

如果所给格子的颜色是白色,请你返回 true,如果是黑色,请返回 false 。给定坐标一定代表国际象棋棋盘上一个存在的格子。坐标第一个字符是字母,第二个字符是数字。

示例 1:

输入:coordinates = "a1"
输出:false
解释:如上图棋盘所示,"a1" 坐标的格子是黑色的,所以返回 false 。

示例 2:

输入:coordinates = "h3"
输出:true
解释:如上图棋盘所示,"h3" 坐标的格子是白色的,所以返回 true 

示例 3:

输入:coordinates = "c7"
输出:false

提示:

coordinates.length == 2
'a' <= coordinates[0] <= 'h'
'1' <= coordinates[1] <= '8'

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/determine-color-of-a-chessboard-square

2. 思路分析:

分析题目可以知道我们可以将黑色的各自归为一类,判断哪些字母与数字输出的是黑色,那么剩下来的各自就是白色了

3. 代码如下:

class Solution:
    def squareIsWhite(self, coordinates: str) -> bool:
        c = (coordinates[0] == "a" or coordinates[0] == "c" or coordinates[0] == "e" or coordinates[0] == "g")
        if (c and int(coordinates[1]) % 2 == 1) or (not c and int(coordinates[1]) % 2 == 0):
            return False
        else: return True

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值