P1181 数列分段Section I

    • 13.9K通过
    • 25.9K提交
  • 题目提供者
  • 评测方式 云端评测
  • 标签 模拟 贪心
  • 难度 入门难度
  • 时空限制 1000ms / 128MB

题解

  • 提示:收藏到任务计划后,可在首页查看。
  • 最新讨论 显示

    推荐的相关题目 显示

    题目描述

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

    输入输出格式

    输入格式:

    第1行包含两个正整数$N,M$,表示了数列$A_i$的长度与每段和的最大值,第$2$行包含$N$个空格隔开的非负整数$A_i$,如题目所述。

    输出格式:

    一个正整数,输出最少划分的段数。

    输入输出样例

    输入样例#1: 复制
    5 6
    4 2 4 5 1
    输出样例#1: 复制
    3

    说明

    对于$20\%$的数据,有$N≤10$;

    对于$40\%$的数据,有$N≤1000$;

    对于$100\%$的数据,有$N≤100000,M≤10^9$,$M$大于所有数的最小值,$A_i$之和不超过$10^9$。

    将数列如下划分:

    $[4][2 4][5 1]$

    第一段和为$4$,第$2$段和为$6$,第$3$段和为$6$均满足和不超过$M=6$,并可以证明$3$是最少划分的段数。

    提示
    标程仅供做题后或实在无思路时参考。
    请自觉、自律地使用该功能并请对自己的学习负责。
    如果发现恶意抄袭标程,将按照I类违反进行处理。