美团点评2019校招真题——种花
题目描述
公园里有 N 个花园,初始时每个花园里都没有种花,园丁将花园从1到N编号并计划在编号为i的花园里恰好种 A_i 朵花,他每天会选择一个区间[ L,R ]( 1 ≤ L ≤ R ≤ N )并在编号为 L 到 R 的花园里各种一朵花,那么园丁至少要花多少天才能完成计划?
输入描述
第一行包含一个整数N,1 ≤ N ≤ 10^5。
第二行包含N个空格隔开的整数 A_1 到 A_N ,0 ≤ A_i ≤ 10^4。
输出描述
输出完成计划所需的最少天数。
示例1
输入
5
4 1 8 2 5
输出
14
解答过程:
import java.util.*;
public class Main{public static void main(String[] args){Scanner sc = new Scanner(System.in);int n = sc.nextInt();int[] Ai = new int[n];for(int i=0; i<n; i++){Ai[i]=sc.nextInt();}int sum = 0;for(int i=1; i<n; i++){if(Ai[i-1]>Ai[i]){sum += Ai[i-1]-Ai[i];}}System.out.println(sum+Ai[n-1]);}
}
笔记
如示例给出N为5,则有5个花园,每个花园总需要种的花朵为[4,1,8,2,5]
园丁每天每个区间的每个花园里只能种一朵花,为了得到园丁至少要花多少天才能种完花朵。这里我们定义个数组Ai,将每个花园需要种的花朵存放进来,数组元素的多少就是花园个数。
理解以下代码:
int sum = 0;for(int i=1; i<n; i++){if(Ai[i-1]>Ai[i]){sum += Ai[i-1]-Ai[i];}}
如 i=1 那么,就是 Ai[0] 与 Ai[1] 做比较,很明显4>1,则4-1=3就是园丁种植第一个花园的天数,3天在第一个花园里就种了3朵。此时数组就变成了[ 1,1,8,2,5 ],再来比较 Ai[1] 与 Ai[2] 不满足条件,继续执行代码。以此类推,比较 Ai[3] 与 Ai[4] 大小,需要种6天,[1,1,2,2,5],再看已经没有满足条件的结果了。因此最后一个花园需要种5个花朵,每天种一朵,之后每天都为每一个花园种1朵花朵,直到每个花园的花朵都种完,哈哈哈,5天就能把所有花园的花朵都种完啦。因此将天数加起来:3+6+5=14天。这就是最终答案啦~~~~
美团点评2019校招真题——种花相关推荐
- 美团点评2019校招笔试题——前端开发方向(附答案)
2019年美团点评前端开发岗位校招笔试题目,虽然不是最新的,但面试题万变不离其宗,掌握了想要考察的知识点才是重要的. 1.单选题 点击"计算"按钮后输出结果为( ) A 11.5 ...
- 【网易】牛客网2019校招真题(编程题)
[网易]被3整除 [题解]打表找规律,n为3的倍数和3的倍数余2的都是可以的,3的倍数余1的数是不可以的. 1 #include<bits/stdc++.h> 2 using namesp ...
- 2019校招真题编程(十九)魔法深渊
魔法深渊 题目描述 我的思路 题目描述 前几个月放映的头号玩家简直火得不能再火了,作为一个探索终极AI的研究人员,月神自然去看了此神剧. 由于太过兴奋,晚上月神做了一个奇怪的梦,月神梦见自己掉入了一个 ...
- 游戏海报——快手2019校招真题——笔试编程C/C++
ヾ(@^▽^@)ノ刷快手,也刷快手笔试题. 题目描述: 小明有26种游戏海报,用小写字母"a"到"z"表示.小明会把游戏海报装订成册(可能有重复的海报),册子可 ...
- 永恒python和深渊_【2019校招真题】魔法深渊(python)
题目描述 前几个月放映的头号玩家简直火得不能再火了,作为一个探索终极AI的研究人员,月神自然去看了此神剧. 由于太过兴奋,晚上月神做了一个奇怪的梦,月神梦见自己掉入了一个被施放了魔法的深渊,月神想要爬 ...
- 牛客网 2018校招真题 美团点评 K的倍数
Description 牛客网 2018校招真题 K的倍数 Solving Ideas sum[i + 1]: 表示序列p[0]...p[i]的和 从长度最大的子串开始判断,当剩余需要判断子串长度不可 ...
- 牛客网 2018校招真题 美团点评 关灯游戏
Description 牛客网 2018校招真题 关灯游戏 Solving Ideas 只与最右边的数字有关,如果最右边的数字为1,则Alice赢,否则Bob赢 假设最右边的数字为1 因为Alice是 ...
- 牛客网 2018校招真题 美团点评 重要节点
Description 牛客网 2018校招真题 重要节点 Solving Ideas BFS 创建一个标记数组arrive,arrive[i][j]为true表示从i可以到达j, false则不能 ...
- 美团点评2019年秋招部分编程题汇总 解题报告 Apare_xzc
美团点评2019年秋招部分编程题汇总 企业独家授权 2020.8.7 Apare_xzc 网页链接:美团点评2019年秋招部分编程题汇总 1/7 [编程题] 图的遍历 给定一张包含N个点.N-1条边的 ...
最新文章
- 15篇论文全面概览BERT压缩方法
- 马斯克要往火星轨道送跑车,在深空待10亿年,静候外星人
- .bat文件(%~dp0)和call、echo批处理环境变量
- Linux下shell颜色配置
- 面试官:你说一下Redis使用场景都有哪些
- tab切换-自动、点击、内容变换
- #1130 - Host 'localhost' is not allowed to connect to this MySQL server
- 不为人知的稠密特征加入CTR预估模型的方法
- 与孩子一起学编程python_《与孩子一起学编程》python自测题
- PHP 二维数组根据某个字段排序
- IEEE与APA引用格式
- ESP8266 驱动步进电机(28BYJ-48电机 ULN2003 驱动板)
- mysql 包括冒号_mysql – 在JPA查询中转义冒号字符’:’
- 广谱感应水处理器与缠绕式电子水处理器的区别
- 时光轴全新导购网站购物新体验
- htc升级鸿蒙,HTC手机卡刷教程,固件升级教程
- 20230316 作业
- 半导体物理-固体晶格结构
- 词语语义的相关关系和相似关系量化
- sprintf() 格式化输出函数