#include <stdio.h>
int main ()
{
int n,v;
scanf("%d%d\n",&n,&v);
int j[n-1];//定义数组j存放货物体积
for(int i=0;i<=n-1;i++)//循环输入的货物体积依次存入数组j中
scanf("%d\n",&j);
int k=1,sum=0,m;//第一次进入超市,次数k赋初值为1
for(m=0;m<=n-1;m++)
{
sum+=j[m];//递推计算前m个货物的体积之和并进行以下判断
if(sum+j[m+1]>v)//若前m个货物和第m+1个货物体积之和>v
{sum=0;k++;}
else if(sum+j[m+1]==v)//若前m个货物和第m+1个货物体积之和等于v
{sum=0;k++;m=m+1;}
}
printf("%d",k);
return 0;
}
提交结果是只有百分之四五十的结果通过测试,问题出在哪里了?
全部评论
(0) 回帖