XH-ALCHEMY. 炼金工坊

提交1 通过1
通过率100%
时间限制1000ms
内存限制256MiB

题目描述

题目描述

小婷和小泽在旅行途中遇到了一只怪物。怪物能够承受 HH 点伤害,当他们对怪物累计造成的伤害大于等于 HH 时,怪物就会被消灭。

小婷和小泽携带了 nn 种炼金道具。第 ii 种道具具有耐久 qiq_i、基础伤害 did_i 和特性 tit_i。每使用一次该道具,都会对怪物造成伤害,并使该道具的耐久减少 11。耐久变为 00 后,该道具消失,不能继续使用。

道具可能具有以下两种特性:

  • 数量优势: 设使用道具前的剩余耐久为 rr,本次攻击增加 r×15%r\times 15\% 的基础伤害,即本次攻击造成 di×(1+0.15×r)d_i\times(1+0.15\times r) 点伤害。
  • 最后一击: 如果使用道具前的剩余耐久恰好为 11,本次攻击增加 50%50\% 的基础伤害。

如果一种道具同时具有两种特性,则两个加成比例直接相加。例如,一种基础伤害为 100100、当前剩余耐久为 11 的道具同时具有两种特性,本次攻击造成 100×(1+0.15+0.5)=165100\times(1+0.15+0.5)=165 点伤害。

tit_i 与道具特性的对应关系如下:

tit_i 道具具有的特性
00 无
11 数量优势
22 最后一击
33 数量优势、最后一击

每次攻击时,小婷和小泽可以选择任意一种耐久大于 00 的道具使用。请计算消灭怪物最少需要使用多少次道具。

输入格式

第一行,两个正整数 H,nH,n,分别表示怪物能够承受的伤害和道具种数。

接下来 nn 行,每行三个整数 qi,di,tiq_i,d_i,t_i,分别表示第 ii 种道具的初始耐久、基础伤害和特性。

输出格式

如果能够消灭怪物,输出一个正整数,表示最少需要使用的道具次数。

如果用光所有道具仍不能消灭怪物,输出一行字符串 Game Over。

输入

211 3
1 60 2
4 40 3
2 60 0

输出

3

输入

1100 2
2 520 0
2 500 2

输出

2

输入

1000 2
2 100 1
1 200 3

输出

Game Over

说明/提示

样例 11 说明:

一种使用三次道具的方法如下:

第一次使用第 11 种道具。此时剩余耐久为 11,最后一击生效,造成 60×(1+0.5)=9060\times(1+0.5)=90 点伤害。

第二次使用第 22 种道具。此时剩余耐久为 44,数量优势生效,造成 40×(1+0.15×4)=6440\times(1+0.15\times4)=64 点伤害。

第三次使用第 33 种道具,造成 6060 点伤害。三次攻击共造成 214214 点伤害,任意两次攻击造成的总伤害都小于 211211,因此答案为 33。

样例 22 说明:

连续两次使用第 22 种道具,造成的伤害分别为 500500 和 500×(1+0.5)=750500\times(1+0.5)=750,总伤害为 12501250。

注意,如果每次都选择当前伤害最大的道具,前两次会选择第 11 种道具,只能造成 10401040 点伤害,反而需要进行第三次攻击。

样例 33 说明:

用光第 11 种道具可以造成 130+115=245130+115=245 点伤害;第 22 种道具可以造成 200×(1+0.15+0.5)=330200\times(1+0.15+0.5)=330 点伤害。所有道具总共只能造成 575575 点伤害,无法消灭怪物。

数据范围

本题共 2020 个测试点,每个测试点 55 分。各测试点的数据范围如下:

测试点编号 H≤H\le n≤n\le qi≤q_i\le ti≤t_i\le
1∼41\sim 4 10001000 1010 33
5∼65\sim 6 2000020000 100100 11
7∼87\sim 8 2020 11
9∼129\sim 12 33
13∼2013\sim 20 101210^{12} 500500

对于 100%100\% 的数据保证:1≤H≤1091\le H\le 10^9,1≤n≤5001\le n\le 500,1≤qi≤201\le q_i\le 20,20≤di≤10920\le d_i\le 10^9,0≤ti≤30\le t_i\le 3。

保证所有 did_i 都是 2020 的倍数,因此每次攻击造成的伤害均为整数。