atcoder#ARC064A. [ABC048C] Boxes and Candies

[ABC048C] Boxes and Candies

题目描述

N N 個の箱が横一列に並んでいます。 最初、左から i i 番目の箱には ai a_i 個のキャンディが入っています。

すぬけ君は次の操作を好きな回数だけ行うことができます。

  • キャンディが 1 1 個以上入っている箱をひとつ選び、その箱のキャンディを 1 1 個食べる。

すぬけ君の目標は次の通りです。

  • どの隣り合う 2 2 つの箱を見ても、それらの箱に入っているキャンディの個数の総和が x x 以下である。

目標を達成するために必要な操作回数の最小値を求めてください。

输入格式

入力は以下の形式で標準入力から与えられる。

N N x x a1 a_1 a2 a_2 ... ... aN a_N

输出格式

目標を達成するために必要な操作回数の最小値を出力せよ。

题目大意

NN个箱子横排成一列,左边第ii个箱子里装着aia_i个糖果。

Snuke可以多次执行以下操作:

选一个里面不少于11个糖果的箱子,从那个箱子里吃一个糖果。

他的目标:

任何22个相邻的箱子都不多于xx个糖果。

请确定实现他的目标所需的最小操作次数。

3 3
2 2 2
1
6 1
1 6 1 2 0 4
11
5 9
3 1 4 1 5
0
2 0
5 5
10

提示

制約

  • 2 < = N < = 105 2\ <\ =\ N\ <\ =\ 10^5
  • 0 < = ai < = 109 0\ <\ =\ a_i\ <\ =\ 10^9
  • 0 < = x < = 109 0\ <\ =\ x\ <\ =\ 10^9

Sample Explanation 1

2 2 番目の箱のキャンディを 1 1 個食べればよいです。 すると、各箱のキャンディの個数は (2, 1, 2) (2,\ 1,\ 2) となります。

Sample Explanation 2

たとえば、2 2 番目の箱のキャンディを 6 6 個食べ、4 4 番目の箱のキャンディを 2 2 個食べ、6 6 番目の箱のキャンディを 3 3 個食べればよいです。 すると、各箱キャンディの個数は (1, 0, 1, 0, 0, 1) (1,\ 0,\ 1,\ 0,\ 0,\ 1) となります。

Sample Explanation 3

最初から目標が達成されているので、操作を行う必要はありません。

Sample Explanation 4

すべてのキャンディを食べなければなりません。