c_cpp UVa 10534 - Wavio序列
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_cpp UVa 10534 - Wavio序列相关的知识,希望对你有一定的参考价值。
#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
const int MAXN=1e5+5;
const int MAXM=1e5+5;
const int mod=1e9+7;
int n,x[MAXN],f[MAXN],g[MAXN][2];
int main(){
while(scanf("%d",&n)!=EOF){
for(int i=1;i<=n;i++) scanf("%d",&x[i]);
int len;
f[0]=len=0;
for(int i=1;i<=n;i++){
int l=1,r=len,mid,pos=0;
while(l<=r){
mid=(l+r)/2;
if (f[mid]<x[i]) pos=mid,l=mid+1;
else r=mid-1;
}
f[pos+1]=x[i];
g[i][0]=pos+1;
len=max(len,pos+1);
}
f[0]=len=0;
for(int i=n;i>=1;i--){
int l=1,r=len,mid,pos=0;
while(l<=r){
mid=(l+r)/2;
if (f[mid]<x[i]) pos=mid,l=mid+1;
else r=mid-1;
}
f[pos+1]=x[i];
g[i][1]=pos+1;
len=max(len,pos+1);
}
int ans=0;
for(int i=1;i<=n;i++) ans=max(ans,min(g[i][0],g[i][1]));
printf("%d\n",ans*2-1);
}
return 0;
}
以上是关于c_cpp UVa 10534 - Wavio序列的主要内容,如果未能解决你的问题,请参考以下文章
UVA 10534Wavio Sequence
UVA - 10534
UVa 10534 波浪子序列(快速求LIS)
c_cpp uva10189
c_cpp uva10093
c_cpp uva12307