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]);
}
相关推荐
咖啡の猫2 小时前
Python列表推导式
开发语言·python
毕设源码-朱学姐2 小时前
【开题答辩全过程】以 基于PHP的高校心理测评系统的设计与实现为例,包含答辩的问题和答案
开发语言·php
暗然而日章2 小时前
C++基础:Stanford CS106L学习笔记 9 类模板(Class Templates)
c++·笔记·学习
while(1){yan}2 小时前
网络编程UDP
java·开发语言·网络·网络协议·青少年编程·udp·电脑常识
大猫子的技术日记2 小时前
【工具篇】极简入门 UV Python项目管理工具
开发语言·python·uv
小年糕是糕手2 小时前
【C++同步练习】类和对象(三)
开发语言·jvm·c++·程序人生·考研·算法·改行学it
Learner__Q2 小时前
每天五分钟:leetcode动态规划-递归与递推_day2
算法·深度优先
m0_740043732 小时前
SpringBoot02-SpringMVC入门
java·开发语言·spring boot·spring·mvc
wadesir2 小时前
Judy数组:C语言中的高性能动态数组(全面入门Judy库使用指南)
c语言·开发语言