LeetCode 1705. 吃苹果的最大数目(优先队列)
文章目錄
- 1. 題目
- 2. 解題
1. 題目
有一棵特殊的蘋果樹,一連 n 天,每天都可以長出若干個蘋果。
在第 i 天,樹上會長出 apples[i] 個蘋果,這些蘋果將會在 days[i] 天后(也就是說,第 i + days[i] 天時)腐爛,變得無法食用。
也可能有那么幾天,樹上不會長出新的蘋果,此時用 apples[i] == 0 且 days[i] == 0 表示。
你打算每天 最多 吃一個蘋果來保證營養均衡。注意,你可以在這 n 天之后繼續吃蘋果。
給你兩個長度為 n 的整數數組 days 和 apples ,返回你可以吃掉的蘋果的最大數目。
示例 1: 輸入:apples = [1,2,3,5,2], days = [3,2,1,4,2] 輸出:7 解釋:你可以吃掉 7 個蘋果: - 第一天,你吃掉第一天長出來的蘋果。 - 第二天,你吃掉一個第二天長出來的蘋果。 - 第三天,你吃掉一個第二天長出來的蘋果。過了這一天,第三天長出來的蘋果就已經腐爛了。 - 第四天到第七天,你吃的都是第四天長出來的蘋果。示例 2: 輸入:apples = [3,0,0,0,0,2], days = [3,0,0,0,0,2] 輸出:5 解釋:你可以吃掉 5 個蘋果: - 第一天到第三天,你吃的都是第一天長出來的蘋果。 - 第四天和第五天不吃蘋果。 - 第六天和第七天,你吃的都是第六天長出來的蘋果。提示: apples.length == n days.length == n 1 <= n <= 2 * 10^4 0 <= apples[i], days[i] <= 2 * 10^4 只有在 apples[i] = 0 時,days[i] = 0 才成立來源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/maximum-number-of-eaten-apples
著作權歸領扣網絡所有。商業轉載請聯系官方授權,非商業轉載請注明出處。
2. 解題
參考大佬:https://leetcode-cn.com/problems/maximum-number-of-eaten-apples/solution/c-you-xian-dui-lie-mo-ni-by-fdl-kdvx/
- 優先隊列,貪心,先過期的先吃
892 ms 46.2 MB C++
我的CSDN博客地址 https://michael.blog.csdn.net/
長按或掃碼關注我的公眾號(Michael阿明),一起加油、一起學習進步!
總結
以上是生活随笔為你收集整理的LeetCode 1705. 吃苹果的最大数目(优先队列)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LeetCode 668. 乘法表中第k
- 下一篇: LeetCode 1535. 找出数组游