90分~~ HELP~~
查看原帖
90分~~ HELP~~
620456
philip2011楼主2024/3/13 16:40
#include<bits/stdc++.h>
using namespace std;
int n,a[100001],d;
void tb(int l,int r){
	int minn=INT_MAX;
   bool b=true;
	for(int i=1;i<=n;i++) if(a[i]!=0) b=false;
	if(b==true) return;
	for(int i=l;i<=r;i++) minn=min(minn,a[i]);
	d+=minn;
	for(int i=l;i<=r;i++) a[i]-=minn;
	while(a[l]==0) l++;
	r=l;
	while(a[r+1]!=0) r++;
	tb(l,r);
}
signed main(){
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>a[i];
	}
	tb(1,n);
	cout<<d;
	return 0;
}
2024/3/13 16:40
加载中...