最长上升子序列~
来源:互联网 发布:php抓取教务处成绩 编辑:程序博客网 时间:2024/06/14 20:30
/*arr数组是你自己输入的值 n从1开始输入ans数组申明出来就可以了,初始化0*///int Search(int num,int low,int high){ // int mid; // while(low <= high)// { // mid = (low + high) >> 1; // if(num >= ans[mid]) low = mid + 1; //关键,可修改此处为最长上升子序列// else high = mid - 1;// } // return low; //} int DP(int n){ ans[1] = arr[1]; int len = 1; for (int i = 2; i <= n; i++) { if (arr[i] >= ans[len]) { len = len + 1; ans[len] = arr[i]; } else { // int pos = Search(arr[i],1,len); int pos = upper_bound(ans,ans + len,arr[i]) - ans; //最长不下降子序列,lower为最长上升子序列 ans[pos] = arr[i]; } } return len;
这个模板的复杂度比正常的最长上升子序列低(来自-kuangbin的模板)
0 0
- 最长上升子序列
- 最长上升子序列
- 最长上升子序列
- 最长上升子序列
- 最长上升子序列
- 最长上升子序列
- 最长上升子序列
- 最长上升子序列
- 最长上升子序列
- 最长上升子序列
- 最长上升子序列
- 最长上升子序列
- 最长上升子序列
- 最长上升子序列
- 最长上升子序列
- 最长上升子序列
- 最长上升子序列
- 最长上升子序列
- android Bluetooth开发基本流程
- 从epoll构建muduo-7 加入IMuduoUser
- 矩阵微分相关
- 从epoll构建muduo-8 加入发送缓冲区和接收缓冲区
- android——Bitmap.Config ARGB_8888
- 最长上升子序列~
- json校验出现unexpected token时的解决办法
- 从epoll构建muduo-9 加入onWriteComplate回调和Buffer
- 内存泄漏 http://baike.baidu.com/link?url=xs_CTQcDnYkB4fXPOC0-1nAS666wXdUtiUxmP9udmWq4rYFOq4Ij2CElO-iVAjY
- online_judge_1021
- 用string类 查询字符串中的元音字母
- 从epoll构建muduo-10 Timer定时器
- 欢迎使用CSDN-markdown编辑器
- 第一章 Linux系统简介