顺序表应用8:最大子段和之动态规划法
来源:互联网 发布:淘宝好评20字以上 编辑:程序博客网 时间:2024/06/14 09:32
顺序表应用8:最大子段和之动态规划法
Problem Description
给定n(1<=n<=100000)个整数(可能为负数)组成的序列a[1],a[2],a[3],…,a[n],求该序列如a[i]+a[i+1]+…+a[j]的子段和的最大值。当所给的整数均为负数时定义子段和为0,依此定义,所求的最优值为: Max{0,a[i]+a[i+1]+…+a[j]},1<=i<=j<=n。 例如,当(a[1],a[2],a[3],a[4],a[5],a[6])=(-2,11,-4,13,-5,-2)时,最大子段和为20。
注意:本题目要求用动态规划法求解,只需要输出最大子段和的值。
Input
第一行输入整数n(1<=n<=100000),表示整数序列中的数据元素个数;
第二行依次输入n个整数,对应顺序表中存放的每个数据元素值。
Output
输出所求的最大子段和
Example Input
6-2 11 -4 13 -5 -2
Example Output
20
-------------------------------------------------------------------------------------------------
#include<stdio.h>#include<stdlib.h>#define maxsize 1000000typedef int element;typedef struct{ element *elem; int length, listsize;}Sqlist;int count;void initList(Sqlist &L){ L.elem = new int[maxsize]; L.length = 0; L.listsize = maxsize;}void inputData(Sqlist &L, int len){ L.length = len; for(int i = 0; i < len; i++){ scanf("%d", &L.elem[i]); }}int Maxsum(Sqlist &L){ int max = 0; int maxsum = 0; for(int i=0;i<L.length;i++){ maxsum += L.elem[i]; if(maxsum < 0){ maxsum = 0; } if(maxsum > max){ max = maxsum; } } return max;}void outputData(Sqlist &L){ int i; for(i=0;i<L.length-1;i++){ printf("%d ",L.elem[i]); } printf("%d\n",L.elem[L.length-1]);}int main(){ count = 0; int n ,sum; Sqlist L; scanf("%d", &n); initList(L); inputData(L, n); sum = Maxsum(L); printf("%d\n", sum); return 0;}
阅读全文
0 0
- 顺序表应用8:最大子段和之动态规划法
- 顺序表应用8:最大子段和之动态规划法
- 顺序表应用8:最大子段和之动态规划法
- 顺序表应用8:最大子段和之动态规划法
- 顺序表应用8:最大子段和之动态规划法
- 顺序表应用8:最大子段和之动态规划法
- 顺序表应用8:最大子段和之动态规划法
- 顺序表应用8:最大子段和之动态规划法
- 顺序表应用8:最大子段和之动态规划法
- 3665顺序表应用8:最大子段和之动态规划法
- 顺序表应用8:最大子段和之动态规划法
- SDUTACM 顺序表应用8:最大子段和之动态规划法
- 顺序表应用8:最大子段和之动态规划法
- 顺序表应用8:最大子段和之动态规划法
- 顺序表应用8:最大子段和之动态规划法
- 数据结构顺序表应用8:最大子段和之动态规划法
- 顺序表应用8:最大子段和之动态规划法
- 顺序表应用8:最大子段和之动态规划法
- C#判断点是否在直线上
- 存储过程
- 初学Spring Boot遇到的启动问题
- jquery中文档处理的学习
- cookie和session工作原理
- 顺序表应用8:最大子段和之动态规划法
- Linux多线程下的互斥锁
- 使用poi将word转为html
- React-Native Demo 工程 TransformError babel-preset-react-native
- Android笔记 SystemServer
- QT整理之HelloWorld测试例子
- 实现从oss(阿里云)服务器以附件形式下载文件(含批量下载)
- MySQL 外键约束的参照操作
- 高德云地图简单使用