#LQ1025. 机甲战士

机甲战士

题目描述:

潘多拉星球上的基地指挥官准备派遣一名机甲战士外出执行任务,为了完成任务,机甲战士需要随身携带足够的生存装备。生存装备里存储着氧气和燃料,且每个装备有一定的重量。机甲战士完成任务所需要携带的氧气和燃料都有最低限量,绝对不能少于这个最低限量,一次任务可以携带多个生存装备备用。当给出最低氧气限量值 MM和最低燃料限量值 NN,生存装备的数量KK及每个生存装备中氧气值 aa、燃料值bb 及装备重量cc,请计算出机甲战士要完成任务所需要携带的生存装备的总重量最低是多少,并输出这个最低值。 例如: M=6N=40K=5M=6,N=40,K=5,5 个生存装备中的氧气值、燃料值及装备重量分别如下:

a.png

可以满足要求的携带方法有: 2 号和 4 号装备的组合 (总重量为 120); 2 号和 5 号装备的组合 (总重量为 130); 3 号和 4 号装备的组合 (总重量为 130): 其中,生存装备的总重量最低为 120。

输入描述:

第一行输入两个正整数 M,NM,N,分别表示氧气和燃料的最低限量值第二行输入一个正整数 KK 表示生存装备的个数第三行开始输入K行,每行包括 3 个正整数 aabbcc,分别表示生存装备中氧气值和燃料值及装备的重量

输出描述:

输出一个整数,为机甲战士完成工作所需的生存装备的总重量最低值:如果携带所有的生存装备仍满足不了最低氧气限量值或最低燃料限量值,那么输出1-1

6 40
5
5 5 30
7 15 40
4 20 50
3 25 80
2 30 90
120

提示

1M301 \leq M \leq 30
1N80 1\leq N \leq 80
1a30 1\leq a \leq 30
1b80 1\leq b \leq 80
1c100 1\leq c \leq 100