动态规划--最长递增(减)子队列.[九度1112][递推求解]
来源:互联网 发布:mac 命令行上传文件 编辑:程序博客网 时间:2024/06/07 04:09
题目:http://ac.jobdu.com/problem.php?pid=1112
#include<cstdio>#include<algorithm>using namespace std;int miss[30];int f[40] = { 0 };/*九度1112: 拦截导弹【寻找最长递减子序列】递推公式:F[i] = {1, F[j]+1 | j<i && Aj >= Ai}含义:【王道机试指南 P160】遍历第i号之前的所有 >=Ai 的字符Aj,若在Aj的最小递减子序列上加上Ai后长度大于现有最大值max,则更新*/int main() { int n; f[1] = 1; while (scanf("%d", &n) != EOF) { for (int i = 1; i <= n; i++) {//输入数据 scanf("%d", &miss[i]); } int flag = 1;//记录查找过程中产生的最大值 for (int i = 2; i <= n; i++) { int max = 1; for (int j = 1; j < i; j++) { if (miss[j] >= miss[i] && f[j] + 1 > max){//递推式 max = f[j] + 1; } } f[i] = max; if (max > flag) flag = max;// printf("f[%d] = %d\n", i, f[i]); } printf("%d\n", flag); }//while return 0;}
0 0
- 动态规划--最长递增(减)子队列.[九度1112][递推求解]
- 动态规划--九度.1131.[最长递增子队列]
- 最长递增子序列的求解--动态规划求解
- 使用动态规划求解最长递增子序列(LIS)
- 动态规划:求解最长递增子序列(LIS)
- 九度OJ 1131 合唱队形 -- 动态规划(最长递增子序列)
- 合唱队----动态规划(求解最大递增/减子序列)
- 初识动态规划算法,求解最长非递增子序列【DP算法】
- 求解最长递增子序列长度|动态规划+二分查找:C\C++实现
- 最长递增子序列的求解(O(n*n),O(nlogn))——动态规划
- 最长递增子序列(动态规划)
- 动态规划:最长单调递增子序列
- 动态规划之最长递增子序列
- 动态规划--最长单调递增子序列
- 最长递增子序列(动态规划)
- 动态规划_最长递增子序列
- 动态规划之最长递增子序列
- 【动态规划】单调递增最长子序列
- weex和Android的交互
- index_merge引发的死锁排查
- 二维数组的各种sizeof问题
- C++ 中string类型和 C风格 char类型字符串比较
- Struts2(二) 配置文件struts2.xml的编写
- 动态规划--最长递增(减)子队列.[九度1112][递推求解]
- 设计模式——状态模式
- 2017.02.29 C/C++小知识点
- python中string和Unicode的区别
- WPS2016Pro(激活码)
- python中的生成器generator
- Latex中文简历制作
- 应对表扩展的一列
- android设置字体颜色的三种方法