最大矩形;及第n杯水分析
今日面試題:最大矩形
在一個點陣圖中找面積最大的白色矩形:給你一個NxN的黑白點陣圖,找一個面積最大的全白色的矩形。注意了,是一個矩形,不是任意一個白色相連的區域。你的演算法能夠達到的最好的時間複雜度是多少呢?
===================
第n杯水分析
原題
有一座金字塔,從上到下,第一層有一個杯子、第二層有兩個杯子,依次類推。對杯子進行編號,有如下的形狀:
1 | ||||
2 | 3 | |||
4 | 5 | 6 |
每個杯子的容量為C升,從塔頂倒下L升水,當1號杯子滿了之後,會等量溢位到2號和3號杯子。當2號和3號滿了,2號溢位到4號和5號,3號溢位到5號和6號,注意5號接受來自兩個杯子的水。依次類推。給定C和L,請問,第n杯裡有多少水。
分析
這個型別的題目,關鍵點就是明瞭水倒下來的過程。我們這裡做簡單的分析, 假設L>C, 如果L
金字塔深度 | 0 | 1 | 1 | 2 | 2 | 2 |
杯號 | 1 | 2 | 3 | 4 | 5 | 6 |
A索引 | 0 | 1 | 2 | 3 | 4 | 5 |
觀察上面的表格,我們會發現,一個規律,i號杯深度為h,則i號中溢位的水,將平分進入:
i + h + 1
i + h + 2
比如,文章開始的圖中,3號杯進入5號和六號,3號杯的h為1,則
5 = 3 + 1 + 1
6 = 3 + 2 + 2
利用這個技巧,可以在陣列中儲存樹形的金字塔,並且可以很方便的找到孩子節點。
計算出所有的A[i]之後,要得到最後的答案,還有一部之遙。即:
A[i] >= C ? C : A[i]
【分析完畢】
本文來自微信:待字閨中,2013-07-31釋出,原創@陳利人 ,歡迎大家繼續關注微信公眾賬號“待字閨中”。 【分析完畢】
相關文章
- 最大加權矩形
- 【ALGO】Leetcode 85.最大矩形GoLeetCode
- 直方圖中最大矩形直方圖
- P1719 最大加權矩形
- opencv 最大內接矩形筆記OpenCV筆記
- 藍橋杯-N皇后
- HISTOGRA - 最大矩形面積(單調棧)
- 刷題40-最大矩形面積
- 真的需要“每天8杯水”嗎?
- 84. 柱狀圖中最大的矩形
- 單調棧進階-接雨水-最大矩形
- LeetCode_84.柱狀圖中最大的矩形LeetCode
- [藍橋杯][基礎練習VIP]矩形面積交
- 小於n的最大數
- 力扣LCR 039. 柱狀圖中最大的矩形力扣
- leetcode:求直方圖構成的矩形最大面積LeetCode直方圖
- 面試官:MySQL 中 varchar(n) 中 n 最大取值為多少?面試MySql
- [藍橋杯2018決賽]最大乘積
- [藍橋杯] 乘積最大(dfs或dp)
- Leetcode 559. N叉樹的最大深度LeetCode
- 力扣85-最大矩形(巧妙利用上一題解答 Java版題解)力扣Java
- P8792 [藍橋杯 2022 國 A] 最大公約數
- 矩形Rectangle
- 第九屆藍橋杯B組省賽———乘積最大
- LeetCode每日一題: N叉樹的最大深度(No.559)LeetCode每日一題
- JZ-068-列印從 1 到最大的 n 位數
- 劍指 Offer 列印從1到最大n位數c++C++
- 矩形覆蓋
- AUTOCAD——矩形命令
- Mybatis入門及第一個Mybatis程式MyBatis
- 一天8杯水?真的太多了!Science重磅:首個「飲水公式」出爐,你可能一直沒喝對公式
- 【劍指 Offer 】17. 列印從1到最大的n位數
- 劍指offer | 17. 列印從1到最大的n位數
- 數證杯2024-網路流量分析
- canvas 虛線矩形Canvas
- canvas矩形拖拽效果Canvas
- canvas 繪製矩形Canvas
- [藍橋杯][演算法提高VIP]最大乘積 貪心 雙指標演算法指標
- 小於n的最大數,記一道位元組面試題面試題