编程题
### 问题描述 小蓝是一个魔术师。一天,他参与了一场魔术表演。他面前有 $n$ 个帽子,帽子的编号从 $1$ 到 $n$ ,编号为 $i$ 的帽子里有 $a_i$ 个神奇石子。小蓝掌握了以下两个魔术操作: - 选择编号为 $i$ 的帽子并将帽子中的神奇石子个数减少 $1$​ 个; - 选择编号为 $i,j$ 的帽子并使得帽子 $j$ 中的神奇石子个数等于帽子 $i$ 中的。 有一些观众正观看小蓝的表演。观众认为,如果小蓝能够使所有帽子里的神奇石子的个数总和少于或等于 $k$ 个,那么他们将会对这场比赛满意。 小蓝希望能尽快让观众满意,请你告诉他他最少需要变魔术多少次才能使观众满意。注意,小蓝每次变魔术都只能选择两个魔术操作中的一个,并且神奇石子的神奇之处在于,它的个数可以为负数。 ### 输入格式 第一行包含两个整数 $n,k$ ,分别表示帽子的数量和可使观众满意的最多的神奇石子数。 第二行包含 $n$ 个整数 $a_1,a_2,…,a_n$ ,表示编号为 $i$ 的帽子里初始时的石子数量。 ### 输出格式 输出一个整数,表示小蓝能够让观众满意的最少的变魔术的次数。 ### 样例输入 ``` 7 8 1 2 1 3 1 2 1 ``` ### 样例输出 ``` 2 ``` ### 评测数据规模 对于所有评测数据,$1\leq{n}\leq{10^5 }, 1\leq{k}\leq{10^{15}}, 1\leq{a_i}\leq{10^9 }$ 。
查看答案
赣ICP备20007335号-2