摘要:给定代表棋盘格子的二维数组,出现的大写字母代表白方,小写代表黑方。思路先从二维数组中找到白色车。在逐方向遍历时,遇到时跳过,判断下一个格子。如此遍历四个方向,最终返回可吃棋子数量即可。
D74 999. Available Captures for Rook 题目链接
999. Available Captures for Rook
题目分析在国际象棋中,“车”可以横向或竖向移动任意格子。
给定代表棋盘格子的二维数组,出现的大写字母代表白方,小写代表黑方。.代表空白格子。
返回白色车只走一次棋,有多少种吃法。
思路先从二维数组中找到白色车R。再往四个方向遍历。
在逐方向遍历时,遇到.时跳过,判断下一个格子。
如果遇到同为大写字母时,即遇到己方棋子时,停止遍历。
如果遇到小写字母时,可吃棋子数+1,并停止遍历。
如此遍历四个方向,最终返回可吃棋子数量即可。
最终代码$row){ $colNum = array_search("R",$row); if($colNum !== false){ break; } } if($colNum===-1){ return 0; } $captureable = 0; //找到后往四个方向搜索 for($j=$colNum-1; $j>=0; $j--){ if($board[$rowNum][$j] == "."){ continue; } if(strtoupper($board[$rowNum][$j]) == $board[$rowNum][$j]){ break; } if(strtolower($board[$rowNum][$j]) == $board[$rowNum][$j]){ $captureable++; break; } } for($j=$colNum+1; $j<8; $j++){ if($board[$rowNum][$j] == "."){ continue; } if(strtoupper($board[$rowNum][$j]) == $board[$rowNum][$j]){ break; } if(strtolower($board[$rowNum][$j]) == $board[$rowNum][$j]){ $captureable++; break; } } for($i=$rowNum+1; $i<8; $i++){ if($board[$i][$colNum] == "."){ continue; } if(strtoupper($board[$i][$colNum]) == $board[$i][$colNum]){ break; } if(strtolower($board[$i][$colNum]) == $board[$i][$colNum]){ $captureable++; break; } } for($i=$rowNum-1; $i>=0; $i--){ if($board[$i][$colNum] == "."){ continue; } if(strtoupper($board[$i][$colNum]) == $board[$i][$colNum]){ break; } if(strtolower($board[$i][$colNum]) == $board[$i][$colNum]){ $captureable++; break; } } return $captureable; } }
若觉得本文章对你有用,欢迎用爱发电资助。
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/31616.html
摘要:则不算,因为两个被分割开了,不是连续的。思路只记录前一组是还是,以及出现的次数。相同,则判断是否与前一个字符相同。那么此时需要抛弃前一组的所有内容。当前一组未配对字符数量达到时,说明前一组已经没有可以匹配的字符。故把当前组替换未前一组。 D88 696. Count Binary Substrings 题目链接 696. Count Binary Substrings 题目分析 给定一...
摘要:题目链接题目分析给定一组坐标,返回能组成面积最大的三角形面积。思路只能套循环了。利用三边求面积公式得面积。最终代码若觉得本文章对你有用,欢迎用爱发电资助。 D77 812. Largest Triangle Area 题目链接 812. Largest Triangle Area 题目分析 给定一组坐标,返回能组成面积最大的三角形面积。 思路 只能套for循环了。利用三边求面积公式得面...
摘要:字符数值例如,罗马数字写做,即为两个并列的。通常情况下,罗马数字中小的数字在大的数字的右边。给定一个罗马数字,将其转换成整数。 Create by jsliang on 2019-05-23 13:24:24 Recently revised in 2019-05-23 14:55:20 一 目录 不折腾的前端,和咸鱼有什么区别 目录 一 目录 二 前言 三 解题 ...
摘要:题目链接题目分析题目给定一个字符串数组,每个字符串分两部分,以空格分割。第一部分为访问次数,第二部分为域名。要求按同样的格式,分别返回顶级域名二级域名三级域名的访问次数。最终代码若觉得本文章对你有用,欢迎用爱发电资助。 811. Subdomain Visit Count 题目链接 811. Subdomain Visit Count 题目分析 题目给定一个字符串数组,每个字符串分两部...
摘要:题目链接题目分析给定一个只含和的字符串,返回一个数组。这个数组满足以下条件当为时,。当遇到时,在数组的当前下标位置前插入当前下标。最终代码个人认为这题不是很好描述。有空会尝试描述清楚这个问题。 942. DI String Match 题目链接 942. DI String Match 题目分析 给定一个只含I和D的字符串S,返回一个数组。 这个数组满足以下条件: 当S[i]为I时...
阅读 665·2021-11-25 09:43
阅读 2934·2021-11-24 10:20
阅读 969·2021-10-27 14:18
阅读 1055·2021-09-08 09:36
阅读 3357·2021-07-29 14:49
阅读 1766·2019-08-30 14:07
阅读 2916·2019-08-29 16:52
阅读 2989·2019-08-29 13:12