找出一个具有最小和的长度为K的子数组

#include<stdio.h>
int main()
{
  int a[8]= {10,4,2,5,6,3,8,1},b[8]={0};
  int i,j,max=100,sum=0,sum1,row1 ,row2,k,t=0;
  for(i =0;i<=7;i++)
    {t=0;
    for(j=i;j<7;j++)
     {t++;
        sum=sum+a[j];
        if(max>sum&&t==3)
        {
           max=sum;          
         row1=i,row2=j;
        }
       printf("sum=%d\t",sum);
     } 
     sum = 0;  
    printf("\n");
    }
   printf("和最大max=%d \n子数组为",max);
   for(k=row1;k<=row2;k++)
   printf("a[%d]=%d\t",k,a[k]);
 return 0;   
}

猜你喜欢

转载自blog.csdn.net/weixin_37536336/article/details/103175373