当前位置:网站首页>HDU - 1024 Max Sum Plus Plus(DP)
HDU - 1024 Max Sum Plus Plus(DP)
2022-07-01 05:29:00 【WA_ automata】
HDU - 1024 Max Sum Plus Plus(DP)
Problem Description
Now I think you have got an AC in Ignatius.L’s “Max Sum” problem. To be a brave ACMer, we always challenge ourselves to more difficult problems. Now you are faced with a more difficult problem.
Given a consecutive number sequence S1, S2, S3, S4 … Sx, … Sn (1 ≤ x ≤ n ≤ 1,000,000, -32768 ≤ Sx ≤ 32767). We define a function sum(i, j) = Si + … + Sj (1 ≤ i ≤ j ≤ n).
Now given an integer m (m > 0), your task is to find m pairs of i and j which make sum(i1, j1) + sum(i2, j2) + sum(i3, j3) + … + sum(im, jm) maximal (ix ≤ iy ≤ jx or ix ≤ jy ≤ jx is not allowed).
But I`m lazy, I don’t want to write a special-judge module, so you don’t have to output m pairs of i and j, just output the maximal summation of sum(ix, jx)(1 ≤ x ≤ m) instead.
Input
Each test case will begin with two integers m and n, followed by n integers S1, S2, S3 … Sn.
Process to the end of file.
Output
Output the maximal summation described above in one line.
Sample Input
1 3 1 2 3
2 6 -1 4 -2 3 -2 3
Sample Output
6
8
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
const int N = 1000010;
int a[N],f[N];
int main()
{
int n,m;
while(scanf("%d%d",&m,&n)!=EOF)
{
memset(f,0,sizeof f);
for(int i=1;i<=n;i++) scanf("%d",&a[i]);
for(int i=1;i<=m;i++)
{
int sum=0;
for(int j=1;j<=i;j++)
sum+=a[j];
f[n]=sum;
for(int j=i+1;j<=n;j++)
{
sum=max(sum,f[j-1])+a[j];
f[j-1]=f[n];
f[n]=max(f[j-1],sum);
}
}
printf("%d\n",f[n]);
}
return 0;
}
边栏推荐
- 工业导电滑环的应用
- Leetcode top 100 question 2 Add two numbers
- Fiber Bragg grating (FBG) notes [1]: waveguide structure and Bragg wavelength derivation
- Web Security (IX) what is JWT?
- How to create a progress bar that changes color according to progress
- eBPF Cilium实战(2) - 底层网络可观测性
- Detailed explanation of set
- 在Rainbond中一键部署高可用 EMQX 集群
- [ffmpeg] [reprint] image mosaic: picture in picture with wheat
- Dynamic verification of new form items in El form; El form verifies that the dynamic form V-IF does not take effect;
猜你喜欢

How to select conductive slip ring material

Vmware workstation network card settings and three common network modes

了解 JVM 中几个相关问题 — JVM 内存布局、类加载机制、垃圾回收
![Fiber Bragg grating (FBG) notes [1]: waveguide structure and Bragg wavelength derivation](/img/83/97c0c6e23cbb7b4c2b630c217c5206.jpg)
Fiber Bragg grating (FBG) notes [1]: waveguide structure and Bragg wavelength derivation

Deeply understand the underlying implementation principle of countdownlatch in concurrent programming
![[RootersCTF2019]babyWeb](/img/b4/aa8f8e107a9dacbace72d4717b1834.png)
[RootersCTF2019]babyWeb

提高企业产品交付效率系列(1)—— 企业应用一键安装和升级

Ebpf cilium practice (2) - underlying network observability

Txncoordsender of cockroachdb distributed transaction source code analysis

导电滑环短路的原因以及应对措施
随机推荐
HCIP Day13
Thread process foundation of JUC
Memtable for leveldb source code analysis
Deeply understand the underlying implementation principle of countdownlatch in concurrent programming
如何创建一个根据进度改变颜色的进度条
AcWing 889. 01 sequence satisfying the condition (Cartland number)
HDU - 1024 Max Sum Plus Plus(DP)
Causes of short circuit of conductive slip ring and Countermeasures
How to hide browser network IP address and modify IP internet access?
Actual combat: basic use of Redux
Unity drags and modifies scene camera parameters under the editor
LevelDB源码分析之LRU Cache
Set set detailed explanation
More than one file was found with OS independent path ‘lib/armeabi-v7a/libyuv.so‘.
Leetcode522- longest special sequence ii- hash table - String - double pointer
[RootersCTF2019]babyWeb
El cascade echo failed; El cascader does not echo
printk 调试总结
导电滑环使用的注意事项
Usage and principle of synchronized