你把要擺放的書 books 都整理好,疊成一摞:從上往下,第 i 本書的厚度為books[i][0]
,高度為books[i][1]
。
按順序將這些書擺放到總寬度為shelf_width
的書架上。
先選幾本書放在書架上(它們的厚度之和小於等於書架的寬度 shelf_width),然後再建一層書架。重複這個過程,直到把所有的書都放在書架上。
需要注意的是,在上述過程的每個步驟中,擺放書的順序與你整理好的順序相同。
例如,如果這裡有 5 本書,那麼可能的一種擺放情況是:第一和第二本書放在第一層書架上,第三本書放在第二層書架上,第四和第五本書放在最後一層書架上。
每一層所擺放的書的最大高度就是這一層書架的層高,書架整體的高度為各層高之和。
以這種方式布置書架,返回書架整體可能的最小高度。
示例:
輸入:books =[[
1,1]
,[2,
3],[
2,3]
,[1,
1],[
1,1]
,[1,
1],[
1,2]
], shelf_width =
4輸出:6
解釋:3 層書架的高度和為 1+3
+2=6 。
第 2 本書不必放在第一層書架上。 1
<= books.length <=
1000
1<= books[i][0
]<= shelf_width <=
1000
1<= books[i][1
]<=
1000
class
solution
else
break;}
}return dp[n];}
};
4 ms 7.6 mb c++
我的csdn部落格位址
leetcode 1105 填充書架
附近的家居城 你買回了一直心儀的可調節書架,打算把自己的書都整理到新的書架上。你把要擺放的書 books 都整理好,疊成一摞 從上往下,第 i 本書的厚度為 books i 0 高度為 books i 1 按順序 將這些書擺放到總寬度為 shelf width 的書架上。先選幾本書放在書架上 它們的...
1105 填充書架
按順序 將這些書擺放到總寬度為 shelf width 的書架上。先選幾本書放在書架上 它們的厚度之和小於等於書架的寬度 shelf width 然後再建一層書架。重複這個過程,直到把所有的書都放在書架上。需要注意的是,在上述過程的每個步驟中,擺放書的順序與你整理好的順序相同。例如,如果這裡有 5 ...
leetcode筆記 116填充同一層的兄弟節點
題目 給定乙個二叉樹 struct treelinknode填充它的每個 next 指標,讓這個指標指向其下乙個右側節點。如果找不到下乙個右側節點,則將 next 指標設定為null。初始狀態下,所有 next 指標都被設定為null。說明 示例 給定完美二叉樹,1 2 3 4 5 6 7呼叫你的函...