程式設計思想:
本質為計算直方圖中最小長方形面積
設立三個陣列,h,l,r
陣列h[i]代表從當前行向上的直方圖的第i列有多少個1,有0間隔即不算
陣列l[i]代表大於等於h[i]個1的列最小標號為多少
陣列r[i]代表大於等於h[i]個1的列最大標號為多少
算完這三個陣列之後,迴圈j次~用公式h[i]*(r[i]-l[i]+1)計算以該行為底的最大矩形
上邊的步驟迴圈i次,即將i行為底都統計一遍,找到最大矩形即可
存疑:為什麼有了下邊這句話就對了,沒有就不對呢?
memset(h,0,sizeof(h));
九度 1497 面積最大的全1子矩陣
題目描述 在乙個m n的矩陣中,所有的元素只有0和1,從這個矩陣中找出乙個面積最大的全1子矩陣,所謂最大是指元素1的個數最多 leetcode 原題,沒有案例就是跪,wa 到沒脾氣 未通過九度測試 include include include include include using names...
面積最大的全1子矩陣 九度OJ 1497
題目描述 在乙個m n的矩陣中,所有的元素只有0和1,從這個矩陣中找出乙個面積最大的全1子矩陣,所謂最大是指元素1的個數最多。輸入 輸入可能包含多個測試樣例。對於每個測試案例,輸入的第一行是兩個整數m n 1 m n 1000 代表將要輸入的矩陣的大小。矩陣共有m行,每行有n個整數,分別是0或1,相...
周長最短面積最大 周長相等,圓的面積最大
朗讀者 魏俊祥 幸福六班 從釘子截面不同的常識中,我們知道了,在面積相等的情況下,三角形 正方形 圓形三者相比,圓的周長是最小的。反過來講,如果周長相等的三角形 正方形 圓形,哪個的面積最大呢?答案是圓形的面積最大。下面就讓我們揭開這個謎。生活中有很多圓形的建築或者物品,大草原上的羊圈 牛圈通常都圈...