主页
搜索
最近更新
数据统计
赞助我们
系统公告
1
/
1
请查看完所有公告
优雅的代码风格
最后更新于 2025-06-16 07:01:04
作者
ggbooy
分类
题解
题解
P1020
复制 Markdown
查看原文
更新内容
``` #include<bits/stdc++.h> using namespace std; int a[100005]; int b[100005]; int dp[3][100005]; signed main() { int n=0; while(cin>>a[++n]);n--; for(int i=1;i<=n;i++) b[i]=a[i]; reverse(b+1,b+1+n); int len1=0,len2=0; for(int i=1;i<=n;i++) { if(b[i]>=dp[1][len1]) dp[1][++len1]=b[i]; else *upper_bound(dp[1]+1,dp[1]+1+len1,b[i])=b[i]; if(a[i]>dp[2][len2]) dp[2][++len2]=a[i]; else *lower_bound(dp[2]+1,dp[2]+1+len2,a[i])=a[i]; } cout<<len1<<endl<<len2<<endl; } ```
正在渲染内容...
点赞
0
收藏
0