当前位置: 首页 > news >正文

wordpress视频教程 百度网盘站长seo计费系统

wordpress视频教程 百度网盘,站长seo计费系统,专业网站建设价位,学生个人网页制作题目描述: Alice 和 Bob 打算给花园里的 n 株植物浇水。植物排成一行,从左到右进行标记,编号从 0 到 n - 1 。其中,第 i 株植物的位置是 x i 。 每一株植物都需要浇特定量的水。Alice 和 Bob 每人有一个水罐,最初是…

题目描述:

Alice 和 Bob 打算给花园里的 n 株植物浇水。植物排成一行,从左到右进行标记,编号从 0 到 n - 1 。其中,第 i 株植物的位置是 x = i 。

每一株植物都需要浇特定量的水。Alice 和 Bob 每人有一个水罐,最初是满的 。他们按下面描述的方式完成浇水:

  •  Alice 按 从左到右 的顺序给植物浇水,从植物 0 开始。Bob 按 从右到左 的顺序给植物浇水,从植物 n - 1 开始。他们 同时 给植物浇水。
  • 如果没有足够的水 完全 浇灌下一株植物,他 / 她会立即重新灌满浇水罐。
  • 不管植物需要多少水,浇水所耗费的时间都是一样的。
  • 不能 提前重新灌满水罐。
  • 每株植物都可以由 Alice 或者 Bob 来浇水。
  • 如果 Alice 和 Bob 到达同一株植物,那么当前水罐中水更多的人会给这株植物浇水。如果他俩水量相同,那么 Alice 会给这株植物浇水。

给你一个下标从 0 开始的整数数组 plants ,数组由 n 个整数组成。其中,plants[i] 为第 i 株植物需要的水量。另有两个整数 capacityA 和 capacityB 分别表示 Alice 和 Bob 水罐的容量。返回两人浇灌所有植物过程中重新灌满水罐的 次数 。

示例 1:

输入:plants = [2,2,3,3], capacityA = 5, capacityB = 5
输出:1
解释:
- 最初,Alice 和 Bob 的水罐中各有 5 单元水。
- Alice 给植物 0 浇水,Bob 给植物 3 浇水。
- Alice 和 Bob 现在分别剩下 3 单元和 2 单元水。
- Alice 有足够的水给植物 1 ,所以她直接浇水。Bob 的水不够给植物 2 ,所以他先重新装满水,再浇水。
所以,两人浇灌所有植物过程中重新灌满水罐的次数 = 0 + 0 + 1 + 0 = 1 。

示例 2:

输入:plants = [2,2,3,3], capacityA = 3, capacityB = 4
输出:2
解释:
- 最初,Alice 的水罐中有 3 单元水,Bob 的水罐中有 4 单元水。
- Alice 给植物 0 浇水,Bob 给植物 3 浇水。
- Alice 和 Bob 现在都只有 1 单元水,并分别需要给植物 1 和植物 2 浇水。
- 由于他们的水量均不足以浇水,所以他们重新灌满水罐再进行浇水。
所以,两人浇灌所有植物过程中重新灌满水罐的次数 = 0 + 1 + 1 + 0 = 2 。

示例 3:

输入:plants = [5], capacityA = 10, capacityB = 8 
输出:0
解释:
- 只有一株植物
- Alice 的水罐有 10 单元水,Bob 的水罐有 8 单元水。因此 Alice 的水罐中水更多,她会给这株植物浇水。
所以,两人浇灌所有植物过程中重新灌满水罐的次数 = 0 。

思路描述:

        题目中有个很重要的字眼,就是“不管植物需要多少水,浇水所耗费的时间都是一样的。”,因此,他们两个是同时浇水,也就是说两头是同时进行的。

        我们用两个变量 a 和 b 分别表示 Alice 和 Bob 的水量,初始时a=capacityA,b=capacityB。然后用两个指针 i 和 j 分别指向植物数组的头尾,然后模拟 Alice 和 Bob 从两端向中间浇水的过程。

        当 i<j 时,我们分别判断 Alice 和 Bob 的水量是否足够浇水,如果不够,我们就重新灌满水罐。然后更新 a 和 b 的水量,同时移动指针 i 和 j。最后我们还需要判断 i 和 j 是否相等,如果相等,我们还需要判断 max(a,b) 是否小于植物的水量,如果小于,我们需要再次重新灌满水罐。

代码:

class Solution {public int minimumRefill(int[] plants, int capacityA, int capacityB) {int ans = 0;int a = capacityA;int b = capacityB;int i = 0;int j = plants.length - 1;while (i < j) {// Alice 给植物 i 浇水if (a < plants[i]) {// 没有足够的水,重新灌满水罐ans++;a = capacityA;}a -= plants[i++];// Bob 给植物 j 浇水if (b < plants[j]) {// 没有足够的水,重新灌满水罐ans++;b = capacityB;}b -= plants[j--];}// Alice 和 Bob 到达同一株植物,那么当前水罐中水更多的人会给这株植物浇水if (i == j && Math.max(a, b) < plants[i]) {// 没有足够的水,重新灌满水罐ans++;}return ans;}
}

http://www.yayakq.cn/news/663706/

相关文章:

  • 百度网站关键词排名助手网站图片被盗连怎么办啊
  • 购物网站中加减数目的怎么做网站制作怎样快速
  • 黄页88网seo需要什么技术
  • 如何查找网站竞争对手的宣传方式高端品牌网站建设网站开发注意什么
  • 湛江免费建站重庆 机械有限公司 江北网站建设
  • o2o网站运维建设方案网络设计费收费标准
  • 免费下载网站软件企业邮箱怎么用
  • 十大网站管理系统广州科技网站建设
  • 站长工具百度wordpress lamp lnmp
  • 自动全屏网站模板杭州建设网站
  • 网站流量图片生成百度推广天津总代理
  • 温岭哪里有做网站的疾病预防控制中心
  • 网站建设打造关于设计的网站
  • 做网站需要注册什么类型的公司淘客网站必须备案么
  • h网站模板wordpress媒体库图片显示不出来
  • html5深圳网站开发人工智能 网站建设
  • 湘阴网站设计短域名生成
  • 企业网站建设的一般要素包括6做微网站是订阅号还是服务号号
  • 机场网站建设需求东莞网站制作南城
  • 东莞个人网站制作做网站颜色黑色代码多少钱
  • 缅甸做菠菜网站三亚百度推广地址
  • 商城网站的运营体育彩票网站开发该做哪些步骤
  • 拼多多网站建设合同html5做静态网站
  • 推荐电子商务网站建设网站建设的费用入账
  • 怎么做网站不会被屏蔽自己怎么搭建网站
  • 企业网站建设晋升中建建设银行网站
  • 怎么在线更新wordpress做seo推广一年大概的费用
  • 网站开发 h5wordpress取消邮箱验证
  • 包头网站制作 建设网站开发招标技术规范书
  • 网约车平台app网站建设我开网店一天亏几百