原題鏈結
求最大矩形面積我們可以聯想到那道經典的單調棧例題,因為這道題的n、m都不是很大,所以我們可以用o(n^2)的演算法。列舉每一行,將每一行以及上面的矩形都看成直方圖,即把每列f的個數當作那道題的陰影部分的高度,然後我們在每一行求它的左右最遠距離,那麼這道題就和那道經典題沒有任何區別
1 #include 2using
namespace
std;
3const
int n = 1010;4
char
mp[n][n];
5int cnt[n][n],maxn = 1
<<31;6
intmain()717
}18for(int i=1;i<=n;i++)
27while(!stk.empty()) stk.pop();
28for(int j=m;j>0;j--)
34for(int j=1;j<=m;j++)
35 maxn = max((r[j]-l[j]+1)*cnt[i][j],maxn);36}
37 printf("
%d\n
",maxn*3
);38
return0;
39 }
一道題換個樣子我就不會了orz
不要看到矩陣就dfs!!!
AcWing 152 城市遊戲
有一天,小貓rainbow和freda來到了湘西張家界的天門山玉蟾宮,玉蟾宮宮主藍兔盛情地款待了它們,並賜予它們一片土地。這片土地被分成n m個格仔,每個格仔裡寫著 r 或者 f r代表這塊土地被賜予了rainbow,f代表這塊土地被賜予了freda。現在freda要在這裡賣萌。它要找一塊矩形土地,...
單調棧 Acwing 152 城市遊戲
152 城市遊戲 有一天,小貓rainbow和freda來到了湘西張家界的天門山玉蟾宮,玉蟾宮宮主藍兔盛情地款待了它們,並賜予它們一片土地。這片土地被分成n m個格仔,每個格仔裡寫著 r 或者 f r代表這塊土地被賜予了rainbow,f代表這塊土地被賜予了freda。現在freda要在這裡賣萌。它...
ACWing 667 遊戲時間
讀入兩個整數a aa和b bb,表示遊戲的開始和結束時間,以小時為單位。計算遊戲持續時間。已知遊戲可以在一天開始,在另一天結束,最長持續24 2424 小時。輸入格式 共一行,包含兩個整數a aa和bbb。輸出格式 輸出格式為o jogo durou x hora s 其中x xx為遊戲持續時間。資...