AT_abc085_d [ABC085D] Katana Thrower
题目描述
当你正在散步时,突然出现了一只魔物。幸运的是,你手上有 $N$ 把刀,分别为刀 $1$、刀 $2$、$\dots$、刀 $N$,你可以以任意顺序进行以下两种攻击:
- 挥动你拥有的任意一把刀。如果你挥动刀 $i$($1 \leq i \leq N$),魔物会受到 $a_i$ 点伤害。你可以多次挥动同一把刀。
- 投掷你拥有的任意一把刀。如果你投掷刀 $i$($1 \leq i \leq N$),魔物会受到 $b_i$ 点伤害,并且你会失去这把刀。也就是说,此后你不能再挥动或投掷这把刀。
当魔物受到的总伤害达到 $H$ 点或以上时,魔物会消失。请问,最少需要多少次攻击才能让魔物消失?
输入格式
输入以以下格式从标准输入读入:
> $N$ $H$
> $a_1$ $b_1$
> $a_2$ $b_2$
> $\vdots$
> $a_N$ $b_N$
输出格式
输出使魔物消失所需的最小攻击次数。
说明/提示
## 限制条件
- $1 \leq N \leq 10^5$
- $1 \leq H \leq 10^9$
- $1 \leq a_i \leq b_i \leq 10^9$
- 所有输入均为整数。
## 样例解释 1
你有 $1$ 把刀,挥动时造成 $3$ 点伤害,投掷时造成 $5$ 点伤害。你可以先挥动 $2$ 次再投掷一次,总共造成 $3 + 3 + 5 = 11$ 点伤害,用 $3$ 次攻击让魔物消失。
## 样例解释 2
除了前一把刀外,你还有另一把刀,挥动时造成 $2$ 点伤害,投掷时造成 $6$ 点伤害。你可以将两把刀都投掷出去,造成 $5 + 6 = 11$ 点伤害,用 $2$ 次攻击让魔物消失。
由 ChatGPT 4.1 翻译