您的位置:首页 > 其它

输入一个整形数组,数组里有正数也有负数。。。。。。。。。。。。

2014-10-13 16:36 309 查看
输入一个整形数组,数组里有正数也有负数。数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。求所有子数组的和的最大值

解题分析:

这道题由于没有给出具体的数据量大小,只是一道练习题,那么就可以在程序中设计一个MAX然后把每个数依次相加,并且每次都和MAX比较,如果您大于最大值,则把最大值更新,最后输出。

代码:

#include <iostream>

#include <cstdio>

#define MAXN 100

using namespace std;

int main()

{

int n, MAX = 0, sum = 0, a[MAXN] = {0};

scanf("%d", &n);

for(int i = 0; i < n; i++)

{

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

}

for(int j = 0; j < n; j++)

{

sum += a[j];

if(sum > MAX)

MAX = sum;

}

printf("%d", MAX);

return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐