版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/li99yangg/article/details/79100772
1、掌握用动态规划法设计算法的方法。
2、选择适合的数据结构,在其上实现所设计的动态规划算法,使算法复杂性尽可能低。
#include <stdlib.h>
#include<stdio.h>
int main()
{
int count = 6;
int a[6] = {-2,11,-4,13,-5,-2};
int b[100];
int i;
扫描二维码关注公众号,回复:
5231318 查看本文章
int besti = 0;
int bestj = 0;
int max;
b[0]=a[0];
max=b[0];
for(i=1; i<count; i++)
{
if(b[i-1]>0)
b[i]=b[i-1]+a[i];
else
{
b[i]=a[i];
besti = i;
}
if(b[i]>max)
{
max=b[i];
bestj = i;
}
}
printf("数组为:");
for(int i = 0;i<6;i++)
{
printf("%d ",a[i]);
}
printf("\n起始下标为%d,终止下标为%d,最大值为:%d\n",besti+1,bestj+1,max);
return 0;
}
}