poj 2533 Longest Ordered Subsequence (最长递增子序列)
来源:互联网 发布:mysql查询分析器下载 编辑:程序博客网 时间:2024/05/22 02:11
Description
A numeric sequence of ai is ordered if a1 < a2 < ... < aN. Let the subsequence of the given numeric sequence (a1, a2, ..., aN) be any sequence (ai1, ai2, ..., aiK), where 1 <= i1 < i2 < ... < iK <= N. For example, sequence (1, 7, 3, 5, 9, 4, 8) has ordered subsequences, e. g., (1, 7), (3, 4, 8) and many others. All longest ordered subsequences are of length 4, e. g., (1, 3, 5, 8).
Your program, when given the numeric sequence, must find the length of its longest ordered subsequence.
Your program, when given the numeric sequence, must find the length of its longest ordered subsequence.
Input
The first line of input file contains the length of sequence N. The second line contains the elements of sequence - N integers in the range from 0 to 10000 each, separated by spaces. 1 <= N <= 1000
Output
Output file must contain a single integer - the length of the longest ordered subsequence of the given sequence.
Sample Input
71 7 3 5 9 4 8
Sample Output
4
Source
Northeastern Europe 2002, Far-Eastern Subregion
[Submit] [Go Back] [Status] [Discuss]
Home Page Go Back To top
#include<stdio.h>#include<string.h>#include<algorithm>#include<vector>using namespace std;int a[100003];int num[100003];int solve(int n){ int c=0; for(int i=1;i<=n;i++) { if(i==1) { num[++c]=a[i]; } else if(a[i] > num[c]) { num[++c]=a[i]; } else num[lower_bound(num+1,num+c,a[i])-num]=a[i]; } return c ;}int main(){ int n; while(scanf("%d",&n)==1) { for(int i=1;i<=n;i++) scanf("%d",&a[i]); printf("%d\n",solve(n)); }}
阅读全文
0 0
- poj 2533 Longest Ordered Subsequence(最长递增子序列)
- poj 2533 Longest Ordered Subsequence 最长递增子序列
- POJ 2533 Longest Ordered Subsequence(最长递增子序列)
- poj-2533 Longest Ordered Subsequence(最长递增子序列)
- poj 2533 Longest Ordered Subsequence (最长递增子序列)
- poj 2533 Longest Ordered Subsequence (最长递增子序列)
- POJ 3903-Stock Exchange/POJ 2533-Longest Ordered Subsequence(LIS-最长递增子序列长度)
- POJ 2533 Longest Ordered Subsequence (DP,最长递增序列)
- POJ-2533-Longest Ordered Subsequence-最长递增子序列-动态规划
- POJ 2533 Longest Ordered Subsequence 编程之美 2.16 求数组中最长递增子序列
- POJ 2533--Longest Ordered Subsequence【最长递增子序列 + 二分优化】
- POJ 2533 Longest Ordered Subsequence【最长递增子序列】【DP思想】
- poj 2533 Longest Ordered Subsequence (最长子序列)
- poj-2533-Longest Ordered Subsequence-最长上升子序列
- poj 2533 Longest Ordered Subsequence(LIS(最长上升子序列))
- Poj 2533-Longest Ordered Subsequence(最长有序子序列)
- POJ 2533 Longest Ordered Subsequence 最长上升子序列
- poj 2533 Longest Ordered Subsequence(最长上升子序列)
- INI文件读写
- 【Angular2】组件交互
- const实现的机制
- mapreduce内存溢出,导致Killing container问题
- 最大值减去最小值小于或等于num的子数组数量
- poj 2533 Longest Ordered Subsequence (最长递增子序列)
- TCP/IP协议
- 雷鸣的游戏人生(一) --- 三个笑话
- 获取验证码 HTTP Status 500
- 第48篇 字符编码探密--ASCII,UTF8,GBK,Unicode
- 两道2017华为校招Java面试题
- 《大唐姻缘传》 (李治篇)第四章 勤政事朕染风疾 同一心开疆拓土
- rem单位适配
- 考研复习之栈(一)