题库首页 › GESP等级认证(C++) › 题目 21074

优先购买 时间限制:1.0 s 内存限制:512.0 MB 题目描述 小 A 有M元预算。商店有N个商品,每个商品有商品名S 、价格P和优先级V三种属性,其中V为正整数,且V越小代表商品的优先级越高。 小 A 的购物策略为: 总是优先买优先级最高的东西; 如果有多个最高优先级商品,购买价格最低的; 如果有多个优先级最高且价格最低的商品,购买商品名字典序最小的。 小 A 想知道能购买哪些商品。 输入格式 第一行两个正整数 M,N,代表预算和商品数。 之后N行,每行一个商品,依次为Si,Pi,Vi ,代表第 个商品的商品名、价格、优先级。数据保证不存在两个名字相同的商品。 输出格式 按照字典序从小到大的顺序,输出所有购买商品的商品名。 输入样例 20 4 apple 6 8 bus 15 1 cab 1 10 water 4 8 输出样例 bus cab water 数据范围 对于所有测试点,保证商品名仅由小写字母组成且不存在两个相同的商品名。

优先购买 时间限制:1.0 s 内存限制:512.0 MB  题目配图

正确答案:商品按(V升序,P升序,名字典序)排序,依次购买:预算M够就买并扣P,不够跳过。最后把买到的商品名按字典序排序输出。

试卷来源:202512 CCF-GESP编程能力等级认证C++四级真题

本卷相关题目

在线做题 同科目题库