51nod 1134最长递增子序列
来源:互联网 发布:建筑工程图纸软件 编辑:程序博客网 时间:2024/05/22 12:09
1134 最长递增子序列
基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题
收藏
关注
给出长度为N的数组,找出这个数组的最长递增子序列。(递增子序列是指,子序列的元素是递增的)
例如:5 1 6 8 2 4 5 10,最长递增子序列是1 2 4 5 10。
Input
第1行:1个数N,N为序列的长度(2 <= N <= 50000)第2 - N + 1行:每行1个数,对应序列的元素(-10^9 <= S[i] <= 10^9)
Output
输出最长递增子序列的长度。
Input示例
8516824510
Output示例
5
具体解法看我的另一篇详细解释:
最长上升子序列的两种解法
不过此题只能用nlog(n)的复杂度的解法!
#include <iostream>#include<cstdio>#include<string.h>using namespace std;#define Maxn 50010typedef long long ll;ll arr[Maxn],ans[Maxn],len;int main(){ ll p,i,j,k; //scanf("%d",&T); //while(T--) //{ scanf("%lld",&p); for(i=1;i<=p;i++) { scanf("%lld",&arr[i]); } ans[1]=arr[1]; len=1; for(i=2;i<=p;i++) { if(arr[i]>ans[len]) ans[++len]=arr[i]; else{ ll pos =lower_bound(ans+1,ans+len,arr[i])-ans; ans[pos]=arr[i]; } } printf("%lld\n",len); // } return 0;}
阅读全文
0 0
- 51nod 1134 最长递增子序列
- 51nod 1134 最长递增子序列
- 51nod 1134 最长递增子序列
- [51nod]1134 最长递增子序列
- 51nod 1134 最长递增子序列
- 51Nod 1134 最长递增子序列
- 51nod 1134最长递增子序列
- 51nod 1134 最长递增子序列
- 51Nod 1134 最长递增子序列
- 【51nod】1134 最长递增子序列
- 51Nod-1134 最长递增子序列
- 51nod 1134 最长递增子序列
- 51 nod 1134 最长递增子序列
- 51Nod-1134-最长递增子序列
- 51nod 1134 最长递增子序列
- 51Nod-1134 最长递增子序列
- 51nod--1134 最长递增子序列
- 51nod 1134最长递增子序列
- opencv-性能测量与改进技术
- 用php二分法查找一个值在数组中的位置
- UBOOT下I2C调试命令使用
- XGBoost
- 对海康28181摄像头PS流解码的支持(二)
- 51nod 1134最长递增子序列
- Java通过mongo-java-driver-3.0+查询mongodb数据库
- Unity实现摄像机围绕物体旋转
- 模拟实现strlen函数
- C# Serialize and Deserialize XML string
- 根据list<Map<String,String>>中map的某个属性去重
- 网站上集成PayPal作为付款工具的问题
- c#基础(视频)
- java面试宝典