AcWing 1014. 登山
原题链接
简单
作者:
Lก
,
2022-02-22 15:20:57
,
所有人可见
,
阅读 153
C++ 代码
#include<iostream>
using namespace std;
int n;
int w[1010];
int f[1010],q[1010];
int main(){
cin>>n;
for(int i = 1; i <= n;i++) cin>>w[i];
for(int i = 1;i <= n;i++){
f[i] = 1;
for(int j = 1;j < i;j++){
if(w[i] > w[j]) f[i] = max(f[i],f[j] + 1);
}
}
for(int i = n;i ;i--){
q[i] = 1;
for(int j = n;j > i;j--){
if(w[i] > w[j]) q[i] = max(q[i],q[j] + 1);
}
}
int ans = 0;
for(int i = 1; i <= n;i++){
ans = max(ans,f[i] + q[i]);
}
cout<<ans - 1 ;
}