记录编号 335765 评测结果 AAAAAAAATA
题目名称 [NOIP 2010冲刺十二]奶牛排队 最终得分 90
用户昵称 Gravatar安呐一条小咸鱼。 是否通过 未通过
代码语言 C++ 运行时间 1.225 s
提交时间 2016-11-02 17:52:36 内存使用 1.44 MiB
显示代码纯文本
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const int maxn=100005;
int n,a[maxn],L[maxn],st[maxn],cnt=0,ans=0;
void Rabit_max(int &x,int y){if(x<y)x=y;}
void Rabit_main(){
	scanf("%d",&n);int i,j;
	for(i=1;i<=n;i++)scanf("%d",&a[i]);
	for(i=1;i<=n;i++){
		while(cnt&&a[st[cnt]]<a[i])cnt--;
		L[i]=st[cnt],st[++cnt]=i;	
	}
	int R;
	for(i=1;i<=n;){
		for(R=j=i+1;j<=n&&a[j]>a[i];j++)
			if(L[j]<i)R=j,Rabit_max(ans,j-i+1);
		i=R;
		//printf("%d %d %d\n",i,j-i+1,ans);
	}
	if(ans==1)ans--;
	printf("%d\n",ans);
}
int main(){
//	system("start tahort.out");
	
#define _Rabit _RABIT
#ifdef _Rabit
	freopen("tahort.in","r",stdin);
	freopen("tahort.out","w",stdout);
#endif
	Rabit_main();
#ifndef _Rabit
	getchar(),getchar();
#endif
	fclose(stdin),fclose(stdout);
	return 0;
}