NYOJ_17_单调递增最长子序列
2013-06-25 20:09
218 查看
http://acm.nyist.net/JudgeOnline/problem.php?pid=17
裸的求最长递增子序列。不过要用二分查找+栈优化,不然用二重循环dp会tle
裸的求最长递增子序列。不过要用二分查找+栈优化,不然用二重循环dp会tle
#include <stdio.h> #include <string.h> int q(char *input,int begin,int end,char elem) { if(begin >= end) return end; int mid = (begin+end)/2; if(input[mid] < elem) return q(input,mid+1,end,elem); else return q(input,begin,mid,elem); } int main(int argc, char const *argv[]) { int t,top,l; char input[10010],s[10010]; scanf("%d",&t); while(t--) { scanf("%s",input); top = 1; s[0]=input[0]; for(int i = 1;i<strlen(input);++i) { if(s[top-1] < input[i]){ s[top++] = input[i]; }else{ l=q(s,0,top-1,input[i]); s[l] = input[i]; } } printf("%d\n",top); } return 0; }
相关文章推荐
- NYOJ 17 单调递增最长子序列
- NYOJ 17:单调递增最长子序列【二分】
- NYOJ 17 单调递增最长子序列
- nyoj 16 矩形嵌套 & nyoj 17 单调递增最长子序列
- NYOJ 17 单调递增最长子序列
- 动态规划之-----单调递增最长子序列(nyoj17)
- nyoj44 nyoj17 HDU1087 DP动规 连续字符串的和最大值 单调递增最长子序列 单调递增子序列最小个数 非连续最大递增子序列
- NYOJ 单调递增最长子序列 17
- nyoj 17 单调递增最长子序列
- NYOJ 17-单调递增最长子序列
- nyoj 题目17 单调递增最长子序列
- 单调递增最长子序列(NYOJ 17)
- nyoj17_单调递增最长子序列
- nyoj 17单调递增最长子序列
- nyoj-17-单调递增最长子序列
- NYOJ-17-单调递增最长子序列
- nyoj17 单调递增最长子序列(经典dp三)
- nyoj 17 单调递增最长子序列
- NYOJ 17-单调递增最长子序列
- NYOJ 17 单调递增最长子序列