解题思路: 其实就是一个字段最大和的问题
注意事项:
参考代码:
#include <stdio.h>
int a[100002],maxsum[100002];
int max(int a,int b){
if(a>b)
return a;
else
return b;
}
int main(){
int n;
int max1=-100000;
scanf("%d",&n);
for(int i=1;i<=n;i++)
scanf("%d",&a[i]);
for(int i=1;i<=n;i++){
maxsum[i]=(maxsum[i-1]>0?(maxsum[i-1]+a[i]):a[i]); //比较当前和的大小是否大于0
if(maxsum[i]>max1)
max1=maxsum[i];
}
printf("%d",max1);
return 0;
}
0.0分
3 人评分
C语言程序设计教程(第三版)课后习题10.3 (C语言代码)浏览:509 |
永远的丰碑 (C语言代码)浏览:526 |
矩形面积交 (C语言代码)浏览:1314 |
C语言程序设计教程(第三版)课后习题6.9 (C语言代码)浏览:598 |
杨辉三角 (C语言代码)浏览:679 |
C语言程序设计教程(第三版)课后习题8.3 (C语言代码)浏览:394 |
简单的a+b (C语言代码)浏览:466 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:385 |
母牛的故事 (C语言代码)浏览:455 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:502 |