1134 最长递增子序列(暴力写的)
2016-05-27 17:11
295 查看
可以用二分写...
基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题
收藏
关注
给出长度为N的数组,找出这个数组的最长递增子序列。(递增子序列是指,子序列的元素是递增的)
例如:5 1 6 8 2 4 5 10,最长递增子序列是1 2 4 5 10。
Input
Output
Input示例
Output示例
相关问题
最长递增子序列 V2
160
最长递增子序列的数量
160
break 很是巧妙...
代码:
基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题
收藏
关注
给出长度为N的数组,找出这个数组的最长递增子序列。(递增子序列是指,子序列的元素是递增的)
例如:5 1 6 8 2 4 5 10,最长递增子序列是1 2 4 5 10。
Input
第1行:1个数N,N为序列的长度(2 <= N <= 50000) 第2 - N + 1行:每行1个数,对应序列的元素(-10^9 <= S[i] <= 10^9)
Output
输出最长递增子序列的长度。
Input示例
8 5 1 6 8 2 4 5 10
Output示例
5
相关问题
最长递增子序列 V2
160
最长递增子序列的数量
160
break 很是巧妙...
代码:
#include <cstdio> #include <cmath> #include <cstring> #include <string> #include <algorithm> #include <queue> #include <stack> #include <map> #include <set> #include <vector> #include <iostream> using namespace std; #define for0(i, n) for(int i=0; i<(n); ++i) #define for1(i,a,n) for(int i=(a);i<=(n);++i) #define for2(i,a,n) for(int i=(a);i<(n);++i) #define for3(i,a,n) for(int i=(a);i>=(n);--i) #define for4(i,a,n) for(int i=(a);i>(n);--i) #define CC(i,a) memset(i,a,sizeof(i)) #define LL long long #define MOD 1000000007 #define INF 0x3f3f3f3f #define MAX 50100 int dp[MAX],num[MAX]; int n; int main() { scanf("%d",&n); memset(dp,INF,sizeof(dp)); memset(num,INF,sizeof(num)); for(int i=0; i<n; i++) scanf("%d",&dp[i]); int path=0; for(int i=0; i<n; i++){ for(int j=0; j<n; j++){ if(dp[i]<num[j]){ num[j]=dp[i]; if(path<j) path=j; break; } } } printf("%d\n",path+1); }
相关文章推荐
- C# Task 用法
- 第十四周阅读程序(2)
- uva10976—分数拆分
- 〔C# Note〕面向对象篇
- jquery的each()详细介绍
- Android适配参考
- c++ 优先队列
- 教你改变UITextFiled的placeholder颜色
- Bootstrap3.0学习教程之JS折叠插件
- window环境下安装node.js
- 单调队列(双端队列) poj2823 hdoj3415 hdoj3530
- 动态规划算法学习
- JAVA学习(10) 继承(4) 抽象类和抽象方法
- hadoop集群搭建
- C# 委托 回调 操作UI主线程 学习笔记
- Maven + Eclipse
- 日常开发——Service, Notification显示下载进度
- 并发访问sqlite数据库出现databse is locked的错误的一个解决办法
- html学习笔记(一)
- sas:利用SQL连接表