国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Leetcode PHP題解--D74 999. Available Captures for Ro

馬永翠 / 2697人閱讀

摘要:給定代表棋盤格子的二維數組,出現的大寫字母代表白方,小寫代表黑方。思路先從二維數組中找到白色車。在逐方向遍歷時,遇到時跳過,判斷下一個格子。如此遍歷四個方向,最終返回可吃棋子數量即可。

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;
    }
}

若覺得本文章對你有用,歡迎用愛發電資助。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/31616.html

相關文章

  • Leetcode PHP題解--D88 696. Count Binary Substrings

    摘要:則不算,因為兩個被分割開了,不是連續的。思路只記錄前一組是還是,以及出現的次數。相同,則判斷是否與前一個字符相同。那么此時需要拋棄前一組的所有內容。當前一組未配對字符數量達到時,說明前一組已經沒有可以匹配的字符。故把當前組替換未前一組。 D88 696. Count Binary Substrings 題目鏈接 696. Count Binary Substrings 題目分析 給定一...

    lanffy 評論0 收藏0
  • Leetcode PHP題解--D77 812. Largest Triangle Area

    摘要:題目鏈接題目分析給定一組坐標,返回能組成面積最大的三角形面積。思路只能套循環了。利用三邊求面積公式得面積。最終代碼若覺得本文章對你有用,歡迎用愛發電資助。 D77 812. Largest Triangle Area 題目鏈接 812. Largest Triangle Area 題目分析 給定一組坐標,返回能組成面積最大的三角形面積。 思路 只能套for循環了。利用三邊求面積公式得面...

    SimonMa 評論0 收藏0
  • LeetCode - 013 - 羅馬數字轉整數(roman-to-integer)

    摘要:字符數值例如,羅馬數字寫做,即為兩個并列的。通常情況下,羅馬數字中小的數字在大的數字的右邊。給定一個羅馬數字,將其轉換成整數。 Create by jsliang on 2019-05-23 13:24:24 Recently revised in 2019-05-23 14:55:20 一 目錄 不折騰的前端,和咸魚有什么區別 目錄 一 目錄 二 前言 三 解題 ...

    v1 評論0 收藏0
  • Leetcode PHP題解--D36 811. Subdomain Visit Count

    摘要:題目鏈接題目分析題目給定一個字符串數組,每個字符串分兩部分,以空格分割。第一部分為訪問次數,第二部分為域名。要求按同樣的格式,分別返回頂級域名二級域名三級域名的訪問次數。最終代碼若覺得本文章對你有用,歡迎用愛發電資助。 811. Subdomain Visit Count 題目鏈接 811. Subdomain Visit Count 題目分析 題目給定一個字符串數組,每個字符串分兩部...

    inapt 評論0 收藏0
  • Leetcode PHP題解--D10 942. DI String Match

    摘要:題目鏈接題目分析給定一個只含和的字符串,返回一個數組。這個數組滿足以下條件當為時,。當遇到時,在數組的當前下標位置前插入當前下標。最終代碼個人認為這題不是很好描述。有空會嘗試描述清楚這個問題。 942. DI String Match 題目鏈接 942. DI String Match 題目分析 給定一個只含I和D的字符串S,返回一個數組。 這個數組滿足以下條件: 當S[i]為I時...

    yibinnn 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<