题1 车的可用捕获量

描述

在一个 8 x 8 的棋盘上,有一个白色车(rook)。也可能有空方块,白色的象(bishop)和黑色的卒(pawn)。它们分别以字符 “R”,“.”,“B” 和 “p” 给出。大写字符表示白棋,小写字符表示黑棋。
车按国际象棋中的规则移动:它选择四个基本方向中的一个(北,东,西和南),然后朝那个方向移动,直到它选择停止、到达棋盘的边缘或移动到同一方格来捕获该方格上颜色相反的卒。另外,车不能与其他友方(白色)象进入同一个方格。
返回车能够在一次移动中捕获到的卒的数量。
示例 1:
输入:[[".",".",".",".",".",".",".","."],[".",".",".",“p”,".",".",".","."],[".",".",".",“R”,".",".",".",“p”],[".",".",".",".",".",".",".","."],[".",".",".",".",".",".",".","."],[".",".",".",“p”,".",".",".","."],[".",".",".",".",".",".",".","."],[".",".",".",".",".",".",".","."]]
输出:3
解释:
在本例中,车能够捕获所有的卒。
示例 2:
输入:[[".",".",".",".",".",".",".","."],[".",“p”,“p”,“p”,“p”,“p”,".","."],[".",“p”,“p”,“B”,“p”,“p”,".","."],[".",“p”,“B”,“R”,“B”,“p”,".","."],[".",“p”,“p”,“B”,“p”,“p”,".","."],[".",“p”,“p”,“p”,“p”,“p”,".","."],[".",".",".",".",".",".",".","."],[".",".",".",".",".",".",".","."]]
输出:0
解释:
象阻止了车捕获任何卒。
示例 3:
输入:[[".",".",".",".",".",".",".","."],[".",".",".",“p”,".",".",".","."],[".",".",".",“p”,".",".",".","."],[“p”,“p”,".",“R”,".",“p”,“B”,"."],[".",".",".",".",".",".",".","."],[".",".",".",“B”,".",".",".","."],[".",".",".",“p”,".",".",".","."],[".",".",".",".",".",".",".","."]]
输出:3
解释:
车可以捕获位置 b5,d6 和 f5 的卒。
board.length == board[i].length == 8
board[i][j] 可以是 ‘R’,’.’,‘B’ 或 ‘p’
只有一个格子上存在 board[i][j] == ‘R’

题解

思路:棋子可以朝前后左右走N步,走到边缘或者遇到B和p停止。用dx和dy来控制走的方向,(-1,0)左(1,0)右(0,-1)上(0,1)下,x,y表示R的坐标,先遍历棋盘找到R的坐标位置i,j。在while循环中行走N步。

class Solution {public int numRookCaptures(char[][] board) {int[] dx = {-1, 1, 0, 0};int[] dy = {0, 0, -1, 1};for(int i = 0; i < 8; i++){for(int j = 0; j < 8; j++){if(board[i][j] == 'R'){int ans = 0;for(int k = 0; k < 4; k++){int x = i, y = j;while(true){x += dx[k];y += dy[k];if(x < 0||y < 0||x >= 8||y >= 8||board[x][y] == 'B'){break;}if(board[x][y] == 'p'){ans++;break;}}}return ans;}}}return 0;}
}

【LeetCode】3月26日打卡-Day11相关推荐

  1. leetcode.cn 2022年11月4日 打卡题 754. 到达终点数字【一元二次方程解法,时间复杂度O(1)】

    leetcode 2022年11月4日 打卡题 754. 到达终点数字 写在前面   首先感谢 @子不语 大佬发布的一元二次方程代码实现的启发.题解链接:子不语-754. 到达终点数字   本文侧重梳 ...

  2. RTX 30系游戏本来了!1月26日开售,售价999美元起

    贾浩楠 发自 凹非寺 量子位 报道 | 公众号 QbitAI RTX30系列的GPU也杀到笔记本上了! 今天凌晨,英伟达在CES 2021展会上正式推出适配笔记本的RTX 30系列移动显卡,包括RTX ...

  3. 零界之痕服务器维护,《零界之痕》1月26日更新维护公告

    亲爱的各位玩家您好 <零界之痕>服务器将于2021年1月26日14:00-16:00进行停服更新维护,维护时长预计2小时,维护时间可能延长或提前结束,具体时间请以开服时间为准,维护结束后将 ...

  4. 6月26日日志-消费记录界面实现

    6月26日日志-消费记录和支出报告界面实现 1.界面需求介绍 展示个人消费历史记录,包括消费时间,消费类别,消费钱数等个人信息. 实现用户个人的收支记账功能,除校园卡记录的消费信息之外,用户个人可以在 ...

  5. 第16天-树莓派初入门(一)—点亮-2016年9月26日 21:33:24

    第16天-树莓派初入门(一)-点亮-2016年9月26日 21:33:24 标题里的第16天,不是接触树莓派16天,而是在我心中另一个重要的纪念的计时.. 下午刚收到订购的SD卡,晚上就迫不及待的鼓捣 ...

  6. 互联网晚报 | 6月26日 星期日 |​ ​​官方澄清“i茅台”将上线“500毫升53度飞天茅台”;一批顶流基金经理调仓...

    "i茅台"将1599元/瓶上线"53度500ml飞天"?官方澄清 近日,有市场传言称,7月1日起,"i茅台"将上线"500毫升53 ...

  7. 【历史上的今天】2 月 26 日:施乐 Alto 设计师出生;ATM 机获得专利;Clearview AI 被盗取 30 亿张照片

    整理 | 王启隆 透过「历史上的今天」,从过去看未来,从现在亦可以改变未来. 今天是 2022 年 2 月 26 日,在 17 年前,郭去疾随李开复归国,作为总裁特别助理帮助李开复平息了一场官司:从此 ...

  8. 2013年6月22日全国高校计算机联合考试广西考区一级笔试试题,2021年全国高校计算机联合考试广西考区一级笔试试题卷6月26日B.doc...

    全国高校计算机联合考试(广西考区)一级笔试试题卷 6月26日闭卷考试考试时间:60分钟 试卷种类:[B] 考生注意:①本次考试试卷种类为[B],请考生务必将答题卡上试卷种类栏中[B]方格涂黑.②本次考 ...

  9. 2013年6月22日全国高校计算机联合考试广西考区一级笔试试题,全国高校计算机联合考试(广西考区)一级笔试试题卷2010年6月26日A.doc...

    全国高校计算机联合考试(广西考区)一级笔试试题卷2010年6月26日A 全国高校计算机联合考试 广西考区 一级笔试试题卷 2010年6月26日闭卷考试考试时间:60分钟 试卷种类:[A] 考生注意:① ...

最新文章

  1. 轻松清理系统垃圾[转]
  2. nginx报错:nginx: [alert] could not open error log file: open() “/var/log/nginx/error.log“ failed (2: N
  3. python matplotlib pyplot plt.axhline()函数(绘制平行于x轴的水平参考线)
  4. 基于Quartus II的在线调试方法
  5. 专家称 AI 可以在 120 年内接管人类的所有工作
  6. 解决PHP导出大量数据时设置超链接的问题 --mxp
  7. 用C# Regex类实现的一些常规输入判断
  8. Linux下Socket通信(TCP实现)
  9. 使用python实现一个文件搜索功能,类似于Everything功能
  10. ZKFinger Live20R 版对接java - B/S(ZKFinger SDK 5.0.0.32 )
  11. 关于DSP28开发环境CCS6常见报错汇总(未完待续)
  12. 小程序 40163_小程序获取openid 出现null,{errcode:40163,errmsg:code been used, hints: [ req_id: WNUzlA0105t...
  13. 良心杀软-智量终端安全软件官方中文版V3.0.1 | 智量终端安全官网下载 | 智量终端安全和火绒是黄金搭档
  14. uniapp ios 跳转appstore
  15. Element概述、入门案例及布局
  16. 设计模式实例php,PHP三种设计模式实例教程
  17. Win10设置添加来宾账户的方法
  18. 传奇手游战神引擎多机多区配置方法
  19. java读取word文件并设置其字体样式_Java读取word文件,字体,颜色(示例代码)
  20. 孙武被任命为凯悦与首旅如家合资公司CEO及董事总经理

热门文章

  1. 中兴5G和展锐原厂芯片开发,怎么选?
  2. android studio导入eclipse项目各种问题,Android | 导入Eclipse项目到Android studio的问题解决全过程...
  3. 单片机c语言pwm整流的程序,基于 单片机控制PWM整流电源的设计.doc
  4. Linux C实现简单的shell
  5. LeetCode 2105. 给植物浇水 II(双指针)
  6. LeetCode 1945. 字符串转化后的各位数字之和
  7. LeetCode 1085. 最小元素各数位之和
  8. 程序员面试金典 - 面试题 16.16. 部分排序(排序/不排序)
  9. 程序员面试金典 - 面试题 01.06. 字符串压缩(字符串)
  10. c语言 define 关键字,c语言中define的一个不常见的用法