poj 2533 最长上升子序列
来源:互联网 发布:任盈盈 知乎 编辑:程序博客网 时间:2024/05/21 22:56
方法一,dp
如果 a[i]>a[j] ,那么dp[i]=max(dp[i],dp[j]+1)
#include<stdio.h>#include<string.h>#include<algorithm>using namespace std;const int maxn=1005;int dp[maxn],a[maxn];int main(){int n;while(scanf("%d",&n)==1){for(int i=0;i<n;i++)scanf("%d",&a[i]);int ans=-1;for(int i=0;i<n;i++){dp[i]=1;for(int j=i-1;j>=0;j--)if(a[i]>a[j]&&dp[j]+1>dp[i])dp[i]=dp[j]+1;if(ans<dp[i])ans=dp[i];}printf("%d\n",ans);}}
方法二,set
#include<iostream>#include<set>#include<algorithm>using namespace std;int main(){int n,dat;while(cin>>n){multiset<int>myset;multiset<int>::iterator pos;for(int i=0;i<n;i++){cin>>dat;myset.insert(dat);pos=myset.find(dat);if(++pos!=myset.end())myset.erase(pos);}cout<<myset.size()<<endl;}}
- poj 2533 最长上升子序列
- poj 2533 最长上升子序列
- poj 2533最长上升子序列
- poj 2533 最长上升子序列
- 最长上升子序列 nlogn poj 2533
- poj 2533 最长上升子序列
- 最长上升子序列 POJ 2533
- poj 2533 最长上升子序列
- POJ 2533 最长上升子序列
- 简单的dp@POJ(3)2533 最长上升子序列
- POJ 3903 && 1631 &&2533 最长上升子序列
- poj-2533-Longest Ordered Subsequence-最长上升子序列
- poj 2533 Longest Ordered Subsequence(LIS(最长上升子序列))
- poj 2533 数组的最长上升子序列
- 经典动态规划问题--最长上升子序列 POJ--2533
- POJ 2533 Longest Ordered Subsequence 最长上升子序列
- poj 2533 Longest Ordered Subsequence(最长上升子序列)
- POJ-2533 最长上升子序列 两种写法
- android动画坐标定义
- spring的jJavaMailImp和MimeMessageHelper结合发送邮件
- rh401 - 简单pxe网络引导环境的搭建
- hud 2709 Sumsets
- QT、QTE、qtopia区别
- poj 2533 最长上升子序列
- 学习lisp
- 算法导论第十五章--霍夫曼编码
- vs.net 2005, 没有找到MSVCR80D.dll的完美解决方案
- c/c++ error C2614: illegal member initialization: is not a base or member
- 国内pinterest发展介绍------瀑布流效果
- iPhone开发经典语录集锦
- proxool配置
- DBCC命令1:维护