小吃领取(snack)

题目描述

Y 同学正在参加一次美食节。

现场共有 nn 种小吃,其中第 ii 种小吃有 aia_i 份。

现在需要安排若干位市民来领取这些小吃,并满足以下规则:

  1. 每位市民领取的小吃总数至多为 xx 份;
  2. 对于任意一种小吃,每位市民至多领取 22 份。

设一共安排了若干位市民,且所有小吃都被领取完。你需要求出满足条件时,所需市民人数的最小值。

更形式化地,你需要将每种小吃分配给若干位市民。若第 jj 位市民领取了第 ii 种小吃 ci,jc_{i,j} 份,则需要满足:

  • 对任意 i,ji,j,有 0ci,j20 \le c_{i,j} \le 2
  • 对任意 ii,有 jci,j=ai\sum_j c_{i,j} = a_i
  • 对任意 jj,有 ici,jx\sum_i c_{i,j} \le x

在所有满足上述条件的分配方案中,求最小的市民人数。

输入格式

第一行包含两个整数 nnxx,分别表示小吃种类数以及每位市民最多可领取的小吃总份数。

第二行包含 nn 个整数 a1,a2,,ana_1,a_2,\dots,a_n,表示每种小吃的份数。

输出格式

输出一行一个整数,表示最少需要多少位市民才能将所有小吃全部领取完。

样例

样例输入 #1

4 2
1 3 2 5

样例输出 #1

6

数据范围与约定

对于 100%100\% 的数据,保证 1n1051 \le n \le 10^52x1002 \le x \le 1001ai1091 \le a_i \le 10^9

测试点编号 分值 nn \le xx \le aia_i \le 特殊性质
121 \sim 2 1010 5050 100100 5050
343 \sim 4 500500 22 10310^3 特殊性质 A
565 \sim 6 50005000 100100 特殊性质 B
7107 \sim 10 2020 10510^5 10510^5
111211 \sim 12 1010 22 10910^9 特殊性质 A
131413 \sim 14 100100 特殊性质 B
152015 \sim 20 3030
  • 特殊性质 A:保证 x=2x=2
  • 特殊性质 B:保证 n=1n=1