当前位置:网站首页>Simulation volume leetcode [general] 1705 The maximum number of apples to eat
Simulation volume leetcode [general] 1705 The maximum number of apples to eat
2022-07-07 08:55:00 【Encounter simulation volume】
1705. The maximum number of apples to eat
There's a special apple tree , One after another n God , Several apples can grow every day . In the i God , Trees grow apples[i] An apple , These apples will be in days[i] Days later ( in other words , The first i + days[i] days ) Rot , Become inedible . Maybe for a few days , New apples don't grow on trees , Use at this time apples[i] == 0 And days[i] == 0 Express .
You're going to... Every day most Eat an apple to keep a balanced diet . Be careful , You can be here n Keep eating apples after three days .
Here are two lengths for you n Array of integers for days and apples , Return the maximum number of apples you can eat .
Example 1:
Input :apples = [1,2,3,5,2], days = [3,2,1,4,2]
Output :7
explain : You can eat 7 An apple :
- The first day , You eat the apples that grow on the first day .
- the second day , You eat an apple that grows the next day .
- On the third day , You eat an apple that grows the next day . After this day , On the third day, the apple has rotted .
- From day four to day seven , You eat apples that grow on the fourth day .
Example 2:
Input :apples = [3,0,0,0,0,2], days = [3,0,0,0,0,2]
Output :5
explain : You can eat 5 An apple :
- From day one to day three , You eat apples that grow on the first day .
- No apples for the fourth and fifth days .
- The sixth and seventh days , You eat apples that grow on the sixth day .
Tips :
apples.length == n
days.length == n
1 <= n <= 2 * 104
0 <= apples[i], days[i] <= 2 * 104
Only in apples[i] = 0 when ,days[i] = 0 It was established.
source : Power button (LeetCode)
link :https://leetcode-cn.com/problems/maximum-number-of-eaten-apples
Copyright belongs to the network . For commercial reprint, please contact the official authority , Non-commercial reprint please indicate the source .
Code :
import heapq
from leetcode_python.utils import *
class Solution:
def __init__(self):
pass
def eatenApples(self, apples: List[int], days: List[int]) -> int:
remains = []
index = res = 0
length = len(days)
while remains or index<length:
while remains and remains[0][0]<=index:heapq.heappop(remains)
if index<length and apples[index]:heapq.heappush(remains,[days[index]+index,apples[index]])
if remains:
if remains[0][1]>1:remains[0][1]-=1
else:heapq.heappop(remains)
res+=1
index+=1
return res
def test(data_test):
s = Solution()
data = data_test # normal
# data = [list2node(data_test[0])] # list turn node
return s.eatenApples(*data)
def test_obj(data_test):
result = [None]
obj = Solution(*data_test[1][0])
for fun, data in zip(data_test[0][1::], data_test[1][1::]):
if data:
res = obj.__getattribute__(fun)(*data)
else:
res = obj.__getattribute__(fun)()
result.append(res)
return result
if __name__ == '__main__':
datas = [
[[1,2,3,5,2],[3,2,1,4,2]],
]
for data_test in datas:
t0 = time.time()
print('-' * 50)
print('input:', data_test)
print('output:', test(data_test))
print(f'use time:{
time.time() - t0}s')
remarks :
GitHub:https://github.com/monijuan/leetcode_python
CSDN Summary : Simulation volume Leetcode Summary of questions _ Paper blog -CSDN Blog
You can add QQ Group communication :1092754609
leetcode_python.utils See the description on the summary page for details
First brush questions , Then generated by script blog, If there is any mistake, please leave a message , I see it will be revised ! thank you !
边栏推荐
猜你喜欢

C language for calculating the product of two matrices

Analysis of using jsonp cross domain vulnerability and XSS vulnerability in honeypot

Why choose cloud native database

Nanjing commercial housing sales enabled electronic contracts, and Junzi sign assisted in the online signing and filing of housing transactions
![[step on the pit] Nacos registration has been connected to localhost:8848, no available server](/img/ee/ab4d62745929acec2f5ba57155b3fa.png)
[step on the pit] Nacos registration has been connected to localhost:8848, no available server

leetcode135. Distribute candy

Platformization, a fulcrum of strong chain complementing chain

UnityShader入门精要个人总结--基础篇(一)

Mountaineering team (DFS)

Digital triangle model acwing 275 Pass a note
随机推荐
JS的操作
数据分片介绍
使用Typora编辑markdown上传CSDN时图片大小调整麻烦问题
Required String parameter ‘XXX‘ is not present
Markdown编辑器Editor.md插件的使用
LED模拟与数字调光
Nanjing commercial housing sales enabled electronic contracts, and Junzi sign assisted in the online signing and filing of housing transactions
systemd
Esp32-ulp coprocessor low power mode RTC GPIO interrupt wake up
[Yugong series] February 2022 U3D full stack class 007 - production and setting skybox resources
Greenplum6.x搭建_环境配置
PPT模板、素材下载网站(纯干货,建议收藏)
OpenGL帧缓冲
【MySQL】数据库进阶之触发器内容详解
【微信小程序:缓存操作】
【istio简介、架构、组件】
Frequently Asked Coding Problems
测试人一定要会的技能:selenium的三种等待方式解读,清晰明了
Explain Huawei's application market in detail, and gradually reduce 32-bit package applications and strategies in 2022
Greenplum6.x监控软件搭建