#codefestival2016qualCb. [codefestival_2016_qualC_b]K Cakes

[codefestival_2016_qualC_b]K Cakes

题目描述

KK 块蛋糕。高桥先生想要每天吃一块蛋糕,需要 KK 天才能吃完。

共有 TT 种类型的蛋糕,第 ii 种类型的蛋糕数量为 aia_i (1iT1 ≤ i ≤ T)。

如果连续两天吃同一种类型的蛋糕会觉得无聊,所以高桥先生希望确定蛋糕的吃法顺序,使得他不必连续两天吃相同类型的蛋糕。

求出连续两天吃相同类型的蛋糕的最小天数。

约束条件

  • 1K100001 ≤ K ≤ 10000
  • 1T1001 ≤ T ≤ 100
  • 1ai1001 ≤ a_i ≤ 100
  • a1+a2+...+aT=Ka_1 + a_2 + ... + a_T = K

输入

从标准输入读入数据,输入格式如下:

KK TT a1a_1 a2a_2 ...... aTa_T

输出

输出连续两天吃相同类型的蛋糕的最小天数。


示例输入 1

7 3
3 2 2

示例输出 1

0

例如,如果高桥先生按照 2,1,2,3,1,3,12, 1, 2, 3, 1, 3, 1 的顺序吃蛋糕,他可以避免连续两天吃相同类型的蛋糕。


示例输入 2

6 3
1 4 1

示例输出 2

1

共有 66 块蛋糕。例如,如果高桥先生按照 2,3,2,2,1,22, 3, 2, 2, 1, 2 的顺序吃蛋糕,他只需要在第四天连续吃和前一天相同类型的蛋糕(即第 22 种类型的蛋糕)。因为这是最小的天数,所以答案是 11


示例输入 3

100 1
100

示例输出 3

99

因为高桥先生只有一种类型的蛋糕,他在第二天及之后都必须吃相同类型的蛋糕。因此连续两天吃相同类型的蛋糕的最小天数是 9999