写这篇文章主要是记录自己读题不仔细----无中生有(本人小白,欢迎大佬批评指正)
如上为自己无中生有80分拿OJ测试的记录:(以后看到这篇文章会被自己蠢死!)
如下为我不成熟的、不简洁的代码:
#include <iostream>
#include <algorithm> //之前还使用sort给数组排序,后来才发现不是贪心
using namespace std;
int main()
{
int n,k,num=0,sum=0,i,a[1001],flag;
scanf("%d %d",&n,&k);
for(i=1;i<=n;i++)
{
scanf("%d",&a[i]);
flag+=a[i]; //存总重量
}
for(i=1;i<=n;i++)
{
if(sum<k)
{
sum+=a[i];
flag-=a[i];
}
else
{
sum=a[i];
flag-=a[i];
num++; //当前朋友分完了
}
}
if(flag!=0) //判断是否有剩余蛋糕
printf("%d",num+1);
else
printf("%d",num);
}