T613092 打怪

题目描述

有$n$只怪物,第$i$只怪物的攻击力为$A[i]$,血量为$H[i]$ 现在你需要生产机器人来打败这些怪物,具体地,你可以生产$m(m > 0)$个机器人,第$j$个机器人的攻击力为$B[j]$,血量为$L[j]$。生产完之后,你可以让机器人和怪物战斗,战斗规则如下: 每一步,你挑选一个机器人$j$,并选择一个怪物$i$作为对手,接下来两个人会开启战斗,战斗一轮一轮进行,每一轮,双方会同时发起攻击,令$H[i]-=B[j]$,同时$L[j]-=A[i]$。如果这一轮结束双方血量仍然$>0$则继续下一轮。直到有一方血量$\le 0$则当前轮结束,血量$\le 0$的机器人或怪物出局,血量$>0$的可继续参与后续战斗。 现在你可以决定机器人的数量$m$、每个机器人的$B[j],L[j]$,同时决定战斗策略(你可以任意安排你的机器人和怪物的战斗顺序)。你的目标是不败(即不能出现机器人全部出局但怪物还有剩余的情况)。平局是可以接受的(即最后一个机器人和怪物同时出局) 生产机器人的代价为$\sum_{j=1}^{m}(B[j]+L[j])$,你的任务是在保证不败的前提下,让代价最小。

输入格式

第一行一个正整数$n$表示怪物数量 接下来$n$行,每行两个数$A,H$表示一只怪物的攻击力和血量

输出格式

输出最小代价

说明/提示

## 样例解释 ### 样例1 生产一个机器人$(10,6)$,需要战斗两轮结束 - 第一轮结束后,机器人变为$(10,1)$,怪物变为$(5,10)$ - 第二轮结束后,机器人变为$(10,-4)$,怪物变为$(5,0)$,同时出局 ### 样例2 生产两个机器人$(10,1),(10,21)$,下面是战斗过程(用粗体表示这一步选择的机器人和怪物) | 步数 | 机器人 | 怪物 | 战斗情况 | |-------|----------------------|--------------------------------------|-----------------------------------------------------------------------------| | 1 | (10, 1), **(10, 21)** | **(10, 10)**, (100, 10), (100, 10), (10, 10) | 战斗一轮,怪物出局 | | 2 | (10, 1), **(10, 11)** | (100, 10), (100, 10), **(10, 10)** | 战斗一轮,怪物出局 | | 3 | (10, 1), **(10, 1)** | **(100, 10)**, (100, 10) | 战斗一轮,同时出局 | | 4 | **(10, 1)** | **(100, 10)** | 战斗一轮,同时出局 | ### 样例3 生产一个机器人$(27,21)$ - 第一步,先和$(2,105)$战斗,持续$4$轮,怪物出局,机器人剩余$(27,13)$ - 第二步,和$(4,107)$战斗,持续$4$轮,同时出局 ## 数据范围 对于100%的数据,$1 \le n,A[i],H[i] \le 10^5$