1465. 切割后面积最大的蛋糕 - 力扣(LeetCode)
贪心解决:
只看一边 找到排序后 相邻两边的最大间隔
把两边的最大间隔相乘即可得到结果。
注意:要按题目要求取模运算
class Solution {
public:
int max_level(int h,vector<int>&Cuts){
sort(Cuts.begin(),Cuts.end());
int n=Cuts.size();
int res=max(Cuts[0],h-Cuts[n-1]);
for(int i=1;i<n;i++){
res=max(res,Cuts[i]-Cuts[i-1]);
}
return res;
}
int maxArea(int h, int w, vector<int>& horizontalCuts, vector<int>& verticalCuts) {
int ans1=max_level(h,horizontalCuts);
int ans2=max_level(w,verticalCuts);
return (long long) ans1*ans2 %1'000'000'007;
}
};