最长上升子序列
2016-09-04 13:03
127 查看
最长上升子序列
int LIS(int n){ int idx = 0; dp[idx ++] = arr[0]; for(int i = 1;i < n;i ++){ if(arr[i] > dp[idx - 1]) dp[idx ++] = arr[i]; else{ int where = lower_bound(dp,dp + idx,arr[i]) - dp; dp[where] = min(dp[where],arr[i]); } } return idx; }
相关文章推荐
- 最长上升子序列
- ACM 最长上升子序列的nlogn解法
- 动态规划——求最长下降/上升子序列
- 【结论】【出现在所有最长上升子序列中的元素】NKOJ3500 独立集
- 最长上升子序列O(n*lg(n))代码
- UVA 10051 Tower of Cubes(最长上升子序列)
- hdu 1025 最长上升子序列+排序
- (hdu step 3.2.3)Super Jumping! Jumping! Jumping!(DP:求最长上升子序列的最大和)
- 最长上升子序列问题
- 返回最长上升子序列
- hdu 1257 最长上升子序列问题
- 最长上升子序列LIS O(nlgn)算法
- zoj2432 hdoj1423 最长公共上升子序列(LCIS)
- 动态规划之最长上升子序列
- 求最长上升子序列用动态规划
- 最长非上升子序列
- Codeforces Beta Round #4 (Div. 2 Only) 最长上升子序列
- 最长公共上升子序列
- SDUT 1299 最长上升子序列
- hdu 1069 最长上升子序列变形