连续最大和

作者: pretzei | 来源:发表于2016-12-22 17:22 被阅读14次

一个数组有 N 个元素,求连续子数组的最大和。 例如:[-1,2,1],和最大的连续子数组为[2,1],其和为 3

输入描述:

输入为两行。

第一行一个整数n(1 <= n <= 100000),表示一共有n个元素

第二行为n个数,即每个元素,每个整数都在32位int范围内。以空格分隔。

输出描述:

所有连续子数组中和最大的值。

输入例子:

3

-1 2 1

输出例子:

3


#include<stdio.h>

#include<string.h>

int num[111111];

int dp[111111];

int max(int a, int b) {

return a > b ? a : b;

}

int main() {

int n;

scanf("%d", &n);

for (int i = 1; i <= n; i++) {

scanf("%d", &num[i]);

}

memset(dp, 0, sizeof(dp));

int maxN = num[1];

for (int i = 1; i <= n; i++) {

dp[i] = max(dp[i-1]+num[i], num[i]);

maxN = max(dp[i], maxN);

}

printf("%d\n", maxN);

return 0;

}

相关文章

  • 连续最大和

    一个数组有 N 个元素,求连续子数组的最大和。 例如:[-1,2,1],和最大的连续子数组为[2,1],其和为 3...

  • 动态规划

    1子序列的最大和 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最...

  • 连续子数组最大和

    二刷: 剑指思路,只需要遍历一遍

  • 连续子数组最大和

    思路:

  • 连续子数组最大和

    方法1:归纳法 方法2:动态规划

  • 连续子数组最大和

    描述:输入一个整型数组,数组里有正数也有负数。数组中一个或连续的多个整数组成一个子数组。求所有子数组的和的最大值。...

  • [剑指offer]刷题笔记

    连续子数组的最大和(常见✔) 最小的k个数 数组中出现次数超过一半的数字 数据流中的中位数(难♧) 连续子数组的最...

  • 面试题2

    四、数据结构和算法 1、求一串数字序列中的连续子串最大和,比如arr=1 -2 3 -1 2,连续子串最大和就是3...

  • hdu 1003

    区间连续最大和问题 #pragma comment(linker,"/STACK:1024000000,10240...

  • 连续子数组的最大和

    问题描述:HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天测试组开完会后,他又发话了:在古老的一维模式识别...

网友评论

    本文标题:连续最大和

    本文链接:https://www.haomeiwen.com/subject/rqrhvttx.html