NYOJ 214 单调递增子序列(二)
2016-08-10 11:00
155 查看
/*单调递增子序列(二)
时间限制:1000 ms | 内存限制:65535 KB
难度:4
描述
给定一整型数列{a1,a2…,an}(0
代码二:(超时)
但是思路做法都是一样的
时间限制:1000 ms | 内存限制:65535 KB
难度:4
描述
给定一整型数列{a1,a2…,an}(0
#include<cstdio> int dp[100005]; int main() { int n,x; int mid,r,l,len,i; while(~scanf("%d",&n)) { len=0; scanf("%d",&x); dp[++len]=x; for(i = 2 ; i <= n ; i++) { scanf("%d",&x); if( x > dp[len] ) dp[++len]=x; else { l=1; r=len; while(r>=l) { mid=(r+l)/2; if(dp[mid]>x) r=mid-1; else l=mid+1; } dp[l]=x; } } printf("%d\n",len); } return 0; }
代码二:(超时)
但是思路做法都是一样的
#include<stdio.h> #include<string.h> int dp[100005],s[100005]; int main() { int n,i,j,count; while(~scanf("%d",&n)) { memset(dp,0,sizeof(dp)); count=0; for(i=0;i<n;i++) { scanf("%d",&s[i]); } for(i=0;i<n;i++) { for(j=count;j>=0;j--) { if(s[i]>s[j]) { dp[j+1]=s[i]; if(j==count) count++; break; } } } printf("%d\n",count); } return 0; }
相关文章推荐
- nyoj 214 - 单调递增子序列(二)
- NYOJ214 单调递增子序列(二)
- nyoj 214 单调递增子序列 二 最优解
- NYOJ 214 单调递增子序列(二)
- NYOJ 214 单调递增子序列(二) (单调递增子序列)
- nyoj 214 单调递增子序列(二)(LIS ---nlogn算法)
- nyoj 214 单调递增子序列(二) dp+二分
- nyoj 214 单调递增子序列(二)
- NYOJ 214 单调递增子序列(二)
- NYOJ 214.单调递增子序列(二)(动态规划)
- NYOJ 214 单调递增子序列
- NYOJ-214 单调递增子序列(二)
- nyoj 214——单调递增子序列(二)——————【二分搜索加dp】
- (NYoj 214)单调递增子序列(二) --非递归思想模板
- nyoj 214 单调递增子序列(二)【二分+DP】
- NYOJ 214 单调递增子序列(二) (LIS模板)
- nyoj 214 单调递增子序列(二)《LIS》
- NYOJ 单调递增子序列(二) 南工214
- nyoj 214 单调递增子序列(二) 【另类dp】
- NYOJ214单调递增子序列(二)【dp+二分查找】