链接:https://ac.nowcoder.com/acm/contest/12949/A
来源:牛客网
第一题:A - 跳高
题目描述:
在新的一年,牛牛想跳得更高。牛牛本身可以跳高 h 米。同时牛牛有 n 颗跳高弹,使用第 i 颗跳高弹可以使牛牛跳高高度增加 a(i) 米,且跳高弹的效果是可以叠加的,也就是说如果牛牛使用多颗跳高弹,那么他的跳高高度将会增加这些跳高弹单个效果的和。
每颗跳高弹只能使用一次。
请问牛牛最少需要使用多少个跳高弹,才能让牛牛的高度至少是 u 米高呢?
数据保证答案存在。
分析:
1.最少使用跳高弹个数,那么优先选择ai值大的跳高弹进行使用,则个数最少。
2.边界问题,自身能跳h米高,若已经达到要求,就不需要使用跳高弹。
3.结果输出的是使用了几颗,不需要给出跳高弹索引,这使问题简单化了。
总结:
本道题主要思路就是将跳高弹效果进行从大到小排序,进行累计求和,并计数,达到要求高度后就输出计数。难度