关于最大m段字段和的推荐:qnw的ppt 其中涵盖了大部分的最大字段和问题
Problem Description
现在你有一个序列 a1,a2,a3,…an(1≤n≤106,0≤|an|≤40000)
那么,你的工作是什么呢?
你需要在数组a中找出p组数,需要让sum[i1,j1]+sum[i2,j2]+…+sum[ip,jp]的和最大
[i1,j1],[i2,j2],[i3,j3]…[ip,jp]表示p个区间,任意两个区间彼此独立,无交集。
Sum[i,j]=a[i]+a[i+1]+…+a[j]
Input
第一行输入两个整数 n,p.n是数组a的大小,p是需要找出的p组数(p<n)
第二行输入n 个整数 (数组a)
Output
sum[i1,j1]+sum[i2,j2]+…+sum[ip,jp]的和的最大值
Sample Input
4 1
1 2 3 4
Sample Output
10
代码①
关于代码中的n-m+i :
#include<iostream>
#include<vector>
#include<cstdio>
#include<cstring>
#include <stack>
using namespace std;
#define