840。網格中的魔術方塊
中
主題:陣列、雜湊表、數學、矩陣
3 x 3 幻方 是一個3 x 3 的網格,其中填充了不同的數字從 1 到 9,使得每行、列和兩條對角線都有相同的總和。
給定 row x col 整數網格,有多少 3 x 3 連續幻方子網格?
注意:幻方只能包含 1 到 9 的數字,而網格最多可以包含 15 個數字。
範例1:
雖然這不是:
給定網格內總共只有一個幻方。
範例2:
約束:
解:
我們需要計算給定網格中有多少個 3x3 連續子網格形成幻方。幻方是一個 3x3 的網格,其中所有行、列和兩條對角線的總和均為相同值,並且包含從 1 到 9 的不同數字。
要解決這個問題,我們可以按照以下步驟操作:
檢查子網格是否神奇:
遍歷網格:
讓我們用 PHP 實作這個解決方案:840。網格中的魔術方塊
<?php // Example usage: $grid1 = [ [4, 3, 8, 4], [9, 5, 1, 9], [2, 7, 6, 2] ]; echo numMagicSquaresInside($grid1); // Output: 1 $grid2 = [ [18] ]; echo numMagicSquaresInside($grid2); // Output: 0 ?>
isMagic 函數:
numMagicSquares內部函數:
此程式碼在約束範圍內有效運作,計算給定網格中的所有 3x3 幻方子網格。
聯絡連結
如果您發現本系列有幫助,請考慮在 GitHub 上給 存儲庫 一個星號或在您最喜歡的社交網絡上分享該帖子? 。您的支持對我來說意義重大!
如果您想要更多類似的有用內容,請隨時關注我:
以上是。網格中的魔術方塊的詳細內容。更多資訊請關注PHP中文網其他相關文章!