#1160. 贝贝的海贝展
贝贝的海贝展
题目背景
海曙区“呦呦海贝”月赛即将开始,贝贝想在活动现场布置一个小小的海贝展,和参加月赛的小伙伴们分享自己的收藏。
题目描述
贝贝将 个海贝收藏盒排成一行,从左到右编号为 到 。第 个盒子中有 枚海贝,其中 是一个非负整数。
展台上只有最左边的 个盒子位于展示区。为了让小伙伴们看到足够多的海贝,贝贝希望这 个盒子中的海贝总数至少为 。
每次整理时,贝贝可以交换两个相邻盒子的位置。盒子中的海贝不能取出,也不能在盒子之间转移。
请你帮助贝贝求出:最少需要进行多少次交换,才能使最左边的 个盒子中的海贝总数至少为 ?如果无论怎样交换都无法达到目标,请输出 NO。
输入格式
第一行包含三个整数 ,分别表示盒子的数量、展示区中的盒子数量和所需的海贝总数。
第二行包含 个整数 ,依次表示每个盒子中的海贝数量。
输出格式
输出一行。如果无法达到目标,输出 NO;否则,输出一个整数,表示最少交换次数。
样例 1
6 2 27
10 4 20 6 3 3
1
样例 1 解释
交换装有 枚和 枚海贝的两个相邻盒子后,各盒子中的海贝数量依次为 。最左边两个盒子中的海贝总数为 ,因此只需交换一次。
样例 2
6 5 5000000000
1000000000 1000000000 0 1000000000 1000000000 1000000000
3
样例 2 解释
要使最左边五个盒子中的海贝总数达到 ,这五个盒子都必须装有 枚海贝。因此,需要将编号为 的空盒子移到最右端,最少需要三次相邻交换。
样例 3
3 2 100
20 30 60
NO
样例 3 解释
任意两个盒子中的海贝总数最多为 ,因此无法达到目标。
样例 4
1 1 100
100
0
样例 4 解释
初始状态已经达到目标,无需交换。
数据范围
对于所有测试数据,保证:
- ;
- ;
- ;
- 。
本题采用子任务计分。只有通过一个子任务内的全部测试点,才能获得该子任务的分数。
| 子任务 | 分值 | 附加限制 |
|---|---|---|
| ,, | ||
| 无附加限制 |
相关
在下列比赛中: