Chinaunix首页 | 论坛 | 博客
  • 博客访问: 184589
  • 博文数量: 19
  • 博客积分: 226
  • 博客等级: 二等列兵
  • 技术积分: 318
  • 用 户 组: 普通用户
  • 注册时间: 2012-07-23 09:09
文章分类

全部博文(19)

文章存档

2013年(12)

2012年(7)

分类: C/C++

2013-11-06 15:57:55

求一个整数数组的连续子序列,要求该子序列的整数之和为该整数数组子序列元素和的最大值。

代码如下:

点击(此处)折叠或打开

  1. #include <stdio.h>

  2. int GetMaxSub(int a[],int n)
  3. {
  4.     int i;
  5.     int max=0,thissum=0;
  6.     for(i=0;i<n;i++)
  7.     {
  8.         thissum+=a[i];
  9.         if(thissum>max)
  10.         {
  11.             max=thissum;
  12.         }
  13.         else if(thissum<0)
  14.         {
  15.             thissum=0;
  16.         }
  17.     }
  18.     return max;
  19. }

  20. int main()
  21. {
  22.     int a[]={-2,11,-4,13,-5,-2};
  23.     int sum=GetMaxSub(a,6);
  24.     printf("最大子串和为:%d\n",sum);
  25. }

阅读(1957) | 评论(0) | 转发(0) |
0

上一篇:排序那回事

下一篇:没有了

给主人留下些什么吧!~~