「每日LeetCode」2022年12月9日
本文最后更新于:2023年3月19日 晚上
1812.判断国际象棋棋盘中一个格子的颜色
1812.判断国际象棋棋盘中一个格子的颜色
Category | Difficulty | Likes | Dislikes |
---|---|---|---|
algorithms | Easy (77.86%) | 39 | - |
Tags
Companies
给你一个坐标 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’
思路
首先,这段代码定义了一个名为 squareIsWhite 的函数,它接受一个参数 coordinates,并返回一个布尔值。函数的实现方式是,首先使用 let 声明了两个变量 x 和 y,然后使用解构赋值语法将字符串 coordinates 中的第一个字符和第二个字符分别赋值给 x 和 y。接着,使用 x.charCodeAt() 方法获取 x 字符的 ASCII 码,并将其赋值给 x。最后,使用条件运算符返回一个布尔值。
让我们来看一个示例,假设你传入的 coordinates 参数为 “A1”。那么,函数会执行下面的操作:
- 使用解构赋值语法将字符串 “A1” 中的第一个字符和第二个字符分别赋值给 x 和 y,此时 x 的值为 “A”,y 的值为 “1”。
- 使用 x.charCodeAt() 方法获取字符 “A” 的 ASCII 码,并将其赋值给 x。由于 “A” 的 ASCII 码为 65,因此 x 的值变为 65。
- 最后,使用条件运算符返回一个布尔值。由于 x % 2 === 0 为真,并且 +y % 2 !== 0 为真,因此最后函数会返回 true。
解答
1 |
|
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!