// 数列分段 对于给定的一个长度为 N 的正整数数列 A  i ​  ,现要将其分成连续的若干段,并且每段和不超过 M(可以等于 M),问最少能将其分成多少段使得满足要求。

#include<iostream>
using namespace std;
int main()
{
    int n,m,a[100000];
    int temp=0,result=1;
    int i;
    
    cin>>n>>m;
    for(i=1;i<=n;i++)cin>>a[i];
    
    for(i=1;i<=n;i++)
    {
        if(a[i]+temp>m)
        {
            result++;
            temp=0;
        } 
        temp+=a[i];
    }
    
    cout<<result<<endl;
    return 0;
}
全部评论

相关推荐

迷茫的大四🐶:干脆大厂搞个收费培训得了,这样就人均大厂了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务