优先购买商品问题
类型:程序题

限制条件

  • 时间限制:1.0 s
  • 内存限制:512.0 MB

题目描述

小A有 M 元预算,商店有 N 个商品,每个商品包含三个属性:商品名 S、价格 P、优先级 V(V 为正整数,V 越小代表商品优先级越高)。 小A的购物策略如下:

  1. 总是优先购买优先级最高的商品;
  2. 若存在多个最高优先级商品,选择价格最低的购买;
  3. 若存在多个优先级最高且价格最低的商品,选择商品名字典序最小的购买。 求小A能购买的所有商品。

输入格式

第一行两个正整数 M,N,分别代表预算和商品数量。 接下来 N 行,每行给出一个商品的信息,依次为 S_i、P_i、V_i,分别代表第 i 个商品的名称、价格、优先级。 数据保证不存在两个名称相同的商品。

输出格式

按照字典序从小到大的顺序,输出所有购买商品的名称,每个名称占一行。

样例

输入样例

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
代码编辑器
测试用例输入
{{resultStatus.text}}