luogu填坑

我一开始的思路:从1开始遍历,比如样例中,4>0那么开始往她后面寻找不等于0的道路一起-1,计为一次cnt+1

复制代码
#include<stdio.h>
int main(){
	int n;
	int str[10008];
	scanf("%d",&n);
	
	for(int i=0;i<n;i++){
		scanf("%d",&str[i]);
	}
	int cnt=0;
	for(int i=0;i<n;i++){
		while(str[i]!=0){
			for(int j=i;j<n;j++){
				if(str[j]==0) break;
				str[j]-=1;
			}
			cnt++;
		}
	}
	printf("%d",cnt);
}

但是时间超限了

于是就有了第二个思路:

复制代码
#include<stdio.h>
#define ll long long
	int str[100008];
int main(){
	int n;
	scanf("%d",&n);
	
	for(int i=0;i<n;i++){
		scanf("%d",&str[i]);
	}
	ll cnt=0;
	for(int i=1;i<n;i++){
		if(str[i]>str[i-1]){
			cnt+=str[i]-str[i-1];
		}
	}
	printf("%lld",cnt+str[0]);
}
相关推荐
xyq20248 分钟前
Pandas 安装指南
开发语言
Σίσυφος19008 分钟前
PCL法向量估计 之 RANSAC 平面估计法向量
算法·机器学习·平面
xhbaitxl14 分钟前
算法学习day39-动态规划
学习·算法·动态规划
I_LPL15 分钟前
day23 代码随想录算法训练营 回溯专题2
算法·hot100·回溯算法·求职面试
智者知已应修善业17 分钟前
【洛谷P9975奶牛被病毒传染最少数量推导,导出多样例】2025-2-26
c语言·c++·经验分享·笔记·算法·推荐算法
xixixin_17 分钟前
【JavaScript 】从 || 到??:JavaScript 空值处理的最佳实践升级
开发语言·javascript·ecmascript
Trouvaille ~21 分钟前
【Linux】应用层协议设计实战(一):自定义协议与网络计算器
linux·运维·服务器·网络·c++·http·应用层协议
CSCN新手听安27 分钟前
【linux】高级IO,I/O多路转接之poll,接口和原理讲解,poll版本的TCP服务器
linux·运维·服务器·c++·计算机网络·高级io·poll
CSCN新手听安33 分钟前
【linux】网络基础(三)TCP服务端网络版本计算器的优化,Json的使用,服务器守护进程化daemon,重谈OSI七层模型
linux·服务器·网络·c++·tcp/ip·json
m0_7369191033 分钟前
C++中的委托构造函数
开发语言·c++·算法