请问还能再优化吗?
查看原帖
请问还能再优化吗?
338992
恋爱王子楼主2020/7/12 08:36
#include <cstdio>
#include <iostream>
#include <cctype>
#include <algorithm>
using namespace std;
template<class code>inline code read(const code &a){
    code x=0;short w=0;char ch=0;
    while(!isdigit(ch)){w|=ch=='-';ch=getchar();}
    while(isdigit(ch)){x=(x<<3)+(x<<1)+(ch^48);ch=getchar();}
    return w?-x:x;
}
int n,a[500005],ans; 
int main(){
	n=read(n);
	for(register int i=1;i<=n;++i)a[i]=read(a[i]);
	for(register int i=1;i<n-1;++i){
		register int maxn=a[i+1],now=i+2;
		while(now<=n){
			if(a[now]>=maxn&&a[i]>=maxn)++ans,maxn=max(maxn,a[now]);
			else if(a[i]<maxn)break; 
			++now;
		}
	}
	pr(ans+n-1);
    return 0;
}

2020/7/12 08:36
加载中...