1642. 可以到达的最远建筑
1642. Furthest Building You Can Reach
class Solution {
public:int furthestBuilding(vector<int>& heights, int bricks, int ladders) {priority_queue<int, vector<int>, greater<int> > PQ; // 小顶堆,用来保存前ladders个最大值int sum = 0; // 除了前ladders个最大值之外的和int cnt = 0; //最远可以到达的下标for(int ii = 1; ii < heights.size(); ii++) {int height = max(0, heights[ii] - heights[ii - 1]); // 高度差,取非负数PQ.push(height);if(PQ.size() > ladders) {sum += PQ.top();PQ.pop();if(sum > bricks) break;}cnt = ii;}return cnt;}
};
本文发布于:2024-01-28 10:12:28,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/17064079536692.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |