HDU-5904 LCIS(dp)
来源:互联网 发布:prezi软件破解版 编辑:程序博客网 时间:2024/06/05 12:50
LCIS
Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 329 Accepted Submission(s): 144
Problem Description
Alex has two sequences a1,a2,...,an and b1,b2,...,bm . He wants find a longest common subsequence that consists of consecutive values in increasing order.
Input
There are multiple test cases. The first line of input contains an integer T , indicating the number of test cases. For each test case:
The first line contains two integersn and m (1≤n,m≤100000) -- the length of two sequences. The second line contains n integers: a1,a2,...,an (1≤ai≤106) . The third line contains n integers: b1,b2,...,bm (1≤bi≤106) .
There are at most1000 test cases and the sum of n and m does not exceed 2×106 .
The first line contains two integers
There are at most
Output
For each test case, output the length of longest common subsequence that consists of consecutive values in increasing order.
Sample Input
33 31 2 33 2 110 51 23 2 32 4 3 4 5 6 11 2 3 4 51 121
Sample Output
150
建立两个数组,dp1[x] 代表以x结尾的最大连续长度,dp2[x] 代表以x结尾的最大连续长度,两者的最小值就表示了当前最长公共递增子序列长度,取最大值。
//数组上限大了会超时
#include<iostream>#include<cstdio>#include<algorithm>using namespace std;const int N = 200005;int a[N],b[N];int main(){ int t,n,m; cin >> t; while(t--) { for(int i = 0;i < N;i++) a[i] = b[i] = 0; scanf("%d%d",&n,&m); int x,y; for(int i = 0;i < n;i++) { scanf("%d",&x); a[x] = a[x-1] + 1; } int ans = 0; for(int i = 0;i < m;i++) { scanf("%d",&y); b[y] = b[y-1] + 1; ans = max(ans , min(b[y] , a[y])); } printf("%d\n",ans); } return 0;}
0 0
- 【HDU 5904 LCIS + dp】
- HDU-5904 LCIS(dp)
- HDU 5904 LCIS (DP)
- HDU 5904 LCIS (dp)
- hdu 5904 LCIS【dp】
- HDU 5904 LCIS __ dp、LCIS
- hdu 5904 LCIS(简单dp)
- HDU 5904 LCIS(dp)
- HDU --- 5904 LCIS 【思维 + 简单dp】
- Hdu 1904 LCIS (dp)
- HDU 5904:LCIS(LCIS)
- 【14.06%】【hdu 5904】LCIS
- HDU 5904 - LCIS
- HDU-5904-LCIS
- hdu 5904 LCIS
- HDOJ 5904 LCIS (dp)
- 思维 hdu 5904 (LCIS)
- HDU 5904 LCIS (动态规划) -- 解题报告
- HTML5终极备忘大全(图片版+文字版)
- hdu5800 To My Girlfriend(dp)
- 常见的导致Android内存泄漏问题
- 通过fir工具自动打包ipa
- ASP.NET GridView的Bootstrap分页样式
- HDU-5904 LCIS(dp)
- hud 2838 Cow Sorting 树状数组求逆序数
- 【GDOI模拟】妮厨的愤怒
- LeetCode|Two Sum-java
- airflow详细安装过程
- iOS 静态类库 打包 C,C++文件及和OC混编
- 利用Use Case为系统行为建模(1)
- pom.xml中添加各种依赖
- Android事件分发机制完全解析,带你从源码的角度彻底理解(下)