550 次瀏覽
這裡給出了 n 個地塊,每個地塊在路的兩側都可以建造建築物。如果兩座房屋之間需要一個空位,那麼在該地塊中建造建築物的可能方式有多少種。建造建築物有四種可能性:路的一側、路的另一側、不能建造建築物、路的兩側。輸入和輸出 輸入:它需要建造建築物的部分數量。假設輸入是 3。輸出:輸入地塊數量:3 建築物可以以 25 種不同的方式建造。演算法 constructionWays(n) 輸入:有 n 個地塊。輸出… 閱讀更多
581 次瀏覽
讓我們考慮一個遊戲,在這個遊戲中,玩家每次移動可以獲得 3、5 或 10 分。還給出了目標分數。我們的任務是找到使用這三個分數達到目標分數有多少種可能的方式。透過動態規劃方法,我們將建立一個從 0 到 n 的所有分數列表,對於 3、5、10 的每個值,我們只需更新表即可。輸入和輸出 輸入:使用 3、5 和 10 達到的最大分數。假設輸入是 50。輸出:達到… 閱讀更多
647 次瀏覽
在這個問題中,我們必須找到一些沒有連續 1 的二進位制數。在 3 位二進位制字串中,有三個二進位制數 011、110、111 具有連續的 1,並且有五個數字沒有連續的 1。因此,將此演算法應用於 3 位數後,答案將為 5。如果 a[i] 是二進位制數的集合,其位數為 I,並且不包含任何連續的 1,而 b[i] 是二進位制數的集合,其中位數為 I,並且包含連續的 1,那麼存在如下遞迴關係:a[i] :=… 閱讀更多
675 次瀏覽
在這個問題中,我們必須找到 1 到 n 範圍內所有數字的數字之和。例如,54 的數字之和是 5 + 4 = 9,像這樣,我們必須找到所有數字及其數字之和。我們知道,可以生成 10d - 1 個數字,其位數為 d。為了找到所有這些 d 位數的總和,我們可以使用遞迴公式 sum(10d- 1)=sum(10d-1- 1)*10+45*(10d-1) 輸入和輸出 輸入:此演算法採用範圍的上限,假設它是 20。輸出:… 閱讀更多
263 次瀏覽
網格中每個單元格都有分數,如何使用兩次遍歷從該網格中獲得最大分數。需要滿足一些條件-第一次遍歷從網格的左上角單元格開始,應該到左下角。在第二次遍歷中,從右上角到右下角。從一個單元格我們只能移動到當前單元格的底部、左下角和右下角。如果一次遍歷已經從一個單元格獲得了一些分數,那麼在下一次遍歷中將不會… 閱讀更多
854 次瀏覽
在這個問題中,給定一組不同的箱子,不同箱子的長度、寬度和高度可能不同。我們的任務是找到這些箱子的堆疊,其高度儘可能高。我們可以根據需要旋轉任何箱子。但是有一個規則需要遵守。如果底部箱子的頂部表面的面積大於頂部箱子的底部面積,則可以在另一個箱子上放置一個箱子。輸入和輸出 輸入:給定一個箱子列表。每個箱子由 (長度、寬度、高度) 表示。{(4, 6, 7),… 閱讀更多
4K+ 次瀏覽
Bellman-Ford 演算法用於查詢從源頂點到任何其他頂點的最小距離。此演算法與 Dijkstra 演算法的主要區別在於,在 Dijkstra 演算法中,我們無法處理負權重,但在這裡我們可以輕鬆處理。Bellman-Ford 演算法自下而上地查詢距離。首先,它查詢路徑中只有一條邊的那些距離。之後增加路徑長度以查詢所有可能的解決方案。輸入和輸出 輸入:圖的成本矩陣:0 6 ∞ 7 ∞ ∞ 0 5 8 -4 ∞ -2 0 ∞ ∞ ∞ … 閱讀更多
540 次瀏覽
給定一個圖;我們必須檢查給定的圖是否是星型圖。透過遍歷圖,我們必須找到度數為 1 的頂點數和度數為 n-1 的頂點數。(這裡 n 是給定圖中的頂點數)。當度數為 1 的頂點數為 n-1,而度數為 (n-1) 的頂點數為 1 時,則它是一個星型圖。輸入和輸出 輸入:鄰接矩陣:0 1 1 1 1 0 0 0 1 0 0 0 1 0 0 0 輸出:… 閱讀更多
17K+ 次瀏覽
傳遞閉包是從圖的頂點 u 到頂點 v 的可達性矩陣。給定一個圖,我們必須找到一個頂點 v,它可以從另一個頂點 u 到達,對於所有頂點對 (u, v)。最終矩陣是布林型別的。當頂點 u 到頂點 v 的值為 1 時,表示從 u 到 v 至少有一條路徑。輸入和輸出 輸入:1 1 0 1 0 1 1 0 0 0 1 1 0 0 0 1 輸出:傳遞閉包的矩陣 1 1 1 … 閱讀更多
Ford-Fulkerson 演算法用於檢測給定圖中從起始頂點到匯點頂點的最大流量。在這個圖中,每條邊都有容量。提供了兩個名為源和匯的頂點。源頂點具有所有向外的邊,沒有向內的邊,而匯點將具有所有向內的邊,沒有向外的邊。有一些約束:邊的流量不超過該圖的給定容量。除了源和匯之外,每條邊的流入流量和流出流量也將相等。輸入和輸出 輸入:鄰接矩陣:0 10 0 10 0 0 0 0 4 … 閱讀更多