选择知识点 (0)
找到 50 道编程题
EXY-PG-0028
第 28 题
优先购买
时间限制:1s 内存限制:512MB

题目描述

小 A 有 $M$ 元预算。商店有 $N$ 个商品,每个商品有商品名 $S$、价格 $P$ 和优先级 $V$ 三种属性,其中 $V$ 为正整数,且 $V$ 越小代表商品的优先级越高。

小 A 的购物策略为:

  • 总是优先买优先级最高的东西;
  • 如果有多个最高优先级商品,购买价格最低的;
  • 如果有多个优先级最高且价格最低的商品,购买商品名字典序最小的。

小 A 想知道能购买哪些商品。

输入格式

第一行两个正整数 $M,N$,代表预算和商品数。

之后 $N$ 行,每行一个商品,依次为 $S_i​ P_i​ V_i$​,代表第 $i$ 个商品的商品名、价格、优先级。

数据保证不存在两个名字相同的商品。

输出格式

按照字典序从小到大的顺序,输出所有购买商品的商品名。

样例说明

样例 1

输入:
20 4
apple 6 8
bus 15 1
cab 1 10
water 4 8
输出:
bus
cab
water

数据范围

对于所有测试点,保证 $1 ≤ |S_i| ≤ 10, 1 ≤ M, P_i ≤ 10^5, 1 ≤ N ≤ 10^3, 1 ≤ V_i ≤ 10$。商品名仅由小写字母组成且不存在两个相同的商品名。

语言: C++
GESP真题 四级
2025.12
编程题号: 2
当前页显示 28 - 28 ,共 50 道编程题