笔试和面试题(4)---最大子序列与最大子矩阵问题
2014-03-15 22:34
267 查看
1、给定一个数组,其中元素有正,也有负,找出其中一个连续子序列,使和最大。
B[i+1]=B[i]>0?B[i]+num[i+1]:num[i+1]
2、给定一个矩阵(二维数组),其中数据有大有小,请找一个子矩阵,使得子矩阵的和最大,并输出这个和。
B[i+1]=B[i]>0?B[i]+num[i+1]:num[i+1]
#include <iostream> using namespace std; const int M = 1000; int num[M]; int ans[M]; int n,an; int main() { cin>>n; for(int i=0; i<n; i++) cin>>num[i]; an=num[0]; for(int i=0; i<n; i++) { if(ans[i]>0) { ans[i+1]=num[i+1]+ans[i]; } else { ans[i+1]=num[i+1]; } } for(int i=1;i<=n;i++) { an=max(an,ans[i]); } cout<<an<<endl; return 0; }
2、给定一个矩阵(二维数组),其中数据有大有小,请找一个子矩阵,使得子矩阵的和最大,并输出这个和。
相关文章推荐
- 【Killua笔试面试题整理】最大间隔问题
- 最大子序列和问题的解
- 最大的子序列和问题
- 洛谷P2766 最长不下降子序列问题(最大流)
- 【算法设计】最大子矩阵问题
- [C++]四种方式求解最大子序列求和问题
- 关于最大连续子序列和的问题 (Maximum Subsequence Sum Problem)
- 最大子序列和的问题
- 数据结构一:最大子序列和问题
- 经典笔试面试题-数组中最大的子数组之和
- 笔试算法学习--最大连续子序列和
- 最长公共子串、最长公共子序列、最长回文子串、模式匹配、最大子序列--字符串问题整理
- 最大连续子序列之和练习最大m子段和问题
- 滴滴快的笔试题:最大子矩阵
- 最大子序列和最大子矩阵
- 算法导论-分治、最大子序列问题
- 最大子序列和问题
- 数字序列加入+,*运算符后取得最大值问题; 动态规划;打破传统从决策入手思想;找出问题的特有性质;从例子入手找特点;
- LCS最大公共子序列问题
- 算法导论-分治、最大子序列问题