铺设道路
题目描述
春春是一名道路工程师,负责铺设一条长度为 n 的道路。
铺设道路的主要工作是填平下陷的地表。整段道路可以看作是 n 块首尾相连的区域,一开始,第 i 块区域下陷的深度为 di .
春春每天可以选择一段连续区间 [L,R] ,填充这段区间中的每块区域,让其下陷深度减少 1。在选择区间时,需要保证,区间内的每块区域在填充前下陷深度均不为 0 。
春春希望你能帮他设计一种方案,可以在最短的时间内将整段道路的下陷深度都变为 0 。
纯贪心题,当a[i]>a[i-1]时,天数加a[i]-a[i-1];
代码:
#include<bits/stdc++.h>
using namespace std;
int a[100010];
int main(){
int n;
scanf("%d",&n);
for(int i=1;i<=n;i++) scanf("%d",&a[i]);
int sum=0;
for(int i=1;i<=n;i++){
if(a[i]>a[i-1]){
sum+=a[i]-a[i-1];
}
}
printf("%d\n",sum);
return 0;
}