摘要:給定代表棋盤(pán)格子的二維數(shù)組,出現(xiàn)的大寫(xiě)字母代表白方,小寫(xiě)代表黑方。思路先從二維數(shù)組中找到白色車。在逐方向遍歷時(shí),遇到時(shí)跳過(guò),判斷下一個(gè)格子。如此遍歷四個(gè)方向,最終返回可吃棋子數(shù)量即可。
D74 999. Available Captures for Rook 題目鏈接
999. Available Captures for Rook
題目分析在國(guó)際象棋中,“車”可以橫向或豎向移動(dòng)任意格子。
給定代表棋盤(pán)格子的二維數(shù)組,出現(xiàn)的大寫(xiě)字母代表白方,小寫(xiě)代表黑方。.代表空白格子。
返回白色車只走一次棋,有多少種吃法。
思路先從二維數(shù)組中找到白色車R。再往四個(gè)方向遍歷。
在逐方向遍歷時(shí),遇到.時(shí)跳過(guò),判斷下一個(gè)格子。
如果遇到同為大寫(xiě)字母時(shí),即遇到己方棋子時(shí),停止遍歷。
如果遇到小寫(xiě)字母時(shí),可吃棋子數(shù)+1,并停止遍歷。
如此遍歷四個(gè)方向,最終返回可吃棋子數(shù)量即可。
最終代碼$row){ $colNum = array_search("R",$row); if($colNum !== false){ break; } } if($colNum===-1){ return 0; } $captureable = 0; //找到后往四個(gè)方向搜索 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; } }
若覺(jué)得本文章對(duì)你有用,歡迎用愛(ài)發(fā)電資助。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/31616.html
摘要:則不算,因?yàn)閮蓚€(gè)被分割開(kāi)了,不是連續(xù)的。思路只記錄前一組是還是,以及出現(xiàn)的次數(shù)。相同,則判斷是否與前一個(gè)字符相同。那么此時(shí)需要拋棄前一組的所有內(nèi)容。當(dāng)前一組未配對(duì)字符數(shù)量達(dá)到時(shí),說(shuō)明前一組已經(jīng)沒(méi)有可以匹配的字符。故把當(dāng)前組替換未前一組。 D88 696. Count Binary Substrings 題目鏈接 696. Count Binary Substrings 題目分析 給定一...
摘要:題目鏈接題目分析給定一組坐標(biāo),返回能組成面積最大的三角形面積。思路只能套循環(huán)了。利用三邊求面積公式得面積。最終代碼若覺(jué)得本文章對(duì)你有用,歡迎用愛(ài)發(fā)電資助。 D77 812. Largest Triangle Area 題目鏈接 812. Largest Triangle Area 題目分析 給定一組坐標(biāo),返回能組成面積最大的三角形面積。 思路 只能套for循環(huán)了。利用三邊求面積公式得面...
摘要:字符數(shù)值例如,羅馬數(shù)字寫(xiě)做,即為兩個(gè)并列的。通常情況下,羅馬數(shù)字中小的數(shù)字在大的數(shù)字的右邊。給定一個(gè)羅馬數(shù)字,將其轉(zhuǎn)換成整數(shù)。 Create by jsliang on 2019-05-23 13:24:24 Recently revised in 2019-05-23 14:55:20 一 目錄 不折騰的前端,和咸魚(yú)有什么區(qū)別 目錄 一 目錄 二 前言 三 解題 ...
摘要:題目鏈接題目分析題目給定一個(gè)字符串?dāng)?shù)組,每個(gè)字符串分兩部分,以空格分割。第一部分為訪問(wèn)次數(shù),第二部分為域名。要求按同樣的格式,分別返回頂級(jí)域名二級(jí)域名三級(jí)域名的訪問(wèn)次數(shù)。最終代碼若覺(jué)得本文章對(duì)你有用,歡迎用愛(ài)發(fā)電資助。 811. Subdomain Visit Count 題目鏈接 811. Subdomain Visit Count 題目分析 題目給定一個(gè)字符串?dāng)?shù)組,每個(gè)字符串分兩部...
摘要:題目鏈接題目分析給定一個(gè)只含和的字符串,返回一個(gè)數(shù)組。這個(gè)數(shù)組滿足以下條件當(dāng)為時(shí),。當(dāng)遇到時(shí),在數(shù)組的當(dāng)前下標(biāo)位置前插入當(dāng)前下標(biāo)。最終代碼個(gè)人認(rèn)為這題不是很好描述。有空會(huì)嘗試描述清楚這個(gè)問(wèn)題。 942. DI String Match 題目鏈接 942. DI String Match 題目分析 給定一個(gè)只含I和D的字符串S,返回一個(gè)數(shù)組。 這個(gè)數(shù)組滿足以下條件: 當(dāng)S[i]為I時(shí)...
閱讀 728·2021-11-25 09:43
閱讀 3000·2021-11-24 10:20
閱讀 1063·2021-10-27 14:18
閱讀 1122·2021-09-08 09:36
閱讀 3442·2021-07-29 14:49
閱讀 1828·2019-08-30 14:07
閱讀 2978·2019-08-29 16:52
閱讀 3093·2019-08-29 13:12