当前位置:首页|资讯

GFG 92 Save the Flower

作者:您是打尖儿还是住店呢发布时间:2024-09-25

拯救鲜花



吉克正在集市上卖花。他把所有的花都放在一排的 N 个篮子里。你

给你一个包含 n 个元素的数组 arr,其中第 i 个盒子包含 arr[i] 个花篮。同时给你

一个字符串 s,其中 s[i] 表示盒子是否有盖。

突然下起了雨,极客必须尽可能多地保存容器。如果第 i 个盒子有盖

如果第 i 个盒子有盖子,他可以把盖子转移到第 (i-1) 个盒子(如果该盒子没有盖子)。转移不需要时间。你的

你的任务是确定从降雨中最多可以保存多少个容器。您不能

移动盖子超过一次。


示例 1:


输入:

n = 5

arr = {3,5,2,9,1}

s = "00110”

输出: 14

14

说明

Geek 可以把第 3 个盖子移到第 2 个盒子里,因此可以保存的容器数量为 (9+5)=14 个。

因此可保存的数字是 (9+5)=14。


例 2:


输入

n = 3

arr = {2,1,3}

s = "000”

输出: 0

0

说明:

Geek 没有盖子保护 owers。


你的任务  

你不需要读取输入或打印任何东西。您的任务是完成

函数 saveFlowers(),该函数将整数 n、数组 arr[] 和字符串 s 作为输入参数,并返回可保存的欠花的最大数量。

并返回可保存的花的最大数量。

预期时间复杂度: O(N)

预期空间复杂度:O(N) O(N)


限制条件

1 <= n <= 10

1 <= arr[i] <= 10

s 只包含 “0 ”和 "1


通过DeepL.com(免费版)翻译

----

这里面就是找到连续的l-r的块,l要--,然后加这里面的和,减去这中间最小的数,这样保护的鲜花才是最多的,类似于双指针,只是要想到这个解题方法,不然就老实做错,



Copyright © 2024 aigcdaily.cn  北京智识时代科技有限公司  版权所有  京ICP备2023006237号-1