AT_joi2022ho_c 選挙で勝とう (Let's Win the Election)

题目描述

JOI 国由 $N$ 个州组成,每个州编号为 $1$ 到 $N$。2022 年,JOI 国将举办总统选举。在这次选举中,每个州都会进行投票,获胜的候选人将获得该州分配的 $1$ 票。 理惠打算通过演讲提升自己在各州的信任度,从而赢得选举。具体来说,演讲会产生如下效果: - 在州 $i$($1 \leq i \leq N$)的总演讲时间达到 $A_i$ 小时时,可以获得该州分配的 $1$ 票。 - 在州 $i$($1 \leq i \leq N$)的总演讲时间达到 $B_i$ 小时时,可以获得 $1$ 名协助者。获得的协助者可以继续进行演讲,增加总演讲时间。 - 但有些州无法获得协助者,这种情况下 $B_i = -1$。除此之外,保证 $B_i \geq A_i$。 此外,从州 $i$ 获得的协助者可以在其他州进行演讲,也可以在同一个州同时有多个人进行演讲。例如,如果某州有 $2$ 个人同时演讲 $x$ 小时,则该州的总演讲时间会增加 $2x$ 小时。演讲时间可以不是整数。州与州之间的移动时间可以忽略不计。 由于投票日临近,理惠希望尽快获得目标的 $K$ 票。 给定各州的信息,请编写程序求出获得 $K$ 票所需的最短时间。

输入格式

输入通过标准输入给出,格式如下。所有输入均为整数。 > $N$ $K$ $A_1$ $B_1$ $A_2$ $B_2$ $\vdots$ $A_N$ $B_N$

输出格式

请输出获得 $K$ 票所需的最短时间,输出一行。只要你的答案与标准答案的绝对误差不超过 $0.01$,即可视为正确。输出必须为以下两种格式之一: - 整数。(如:`123`,`0`,`-2022`) - 整数、小数点、若干数字,三者不加空格连续输出。(如:`123.4`,`-123.00`,`0.00288`) 例如,不能输出如 `1.23456e+05` 或 `1.23456e5` 这样的科学计数法。

说明/提示

### 限制条件 - $1 \leq N \leq 500$。 - $1 \leq K \leq N$。 - $1 \leq A_i \leq 1\,000$($1 \leq i \leq N$)。 - $A_i \leq B_i \leq 1\,000$ 或 $B_i = -1$($1 \leq i \leq N$)。 ### 子任务 1.(5 分)$B_i = -1$($1 \leq i \leq N$)。 2.(5 分)$B_i = -1$ 或 $B_i = A_i$($1 \leq i \leq N$)。 3.(11 分)$N \leq 7$。 4.(12 分)$N \leq 20$。 5.(33 分)$N \leq 100$。 6.(11 分)$K = N$。 7.(23 分)无额外限制。 --- ### 样例解释 1 按如下顺序进行选举活动,可以在 $5.5$ 小时内获得所有州的选票。 1. 理惠在州 $2$ 演讲 $2$ 小时,获得该州选票。 2. 理惠在州 $2$ 再演讲 $1$ 小时,获得该州协助者。 3. 理惠和 $1$ 名协助者在州 $3$ 演讲 $2$ 小时,获得该州选票。 4. 理惠和 $1$ 名协助者在州 $1$ 演讲 $0.5$ 小时,获得该州选票。 该输入样例满足子任务 $3, 4, 5, 6, 7$ 的限制。 --- ### 样例解释 2 按如下顺序进行选举活动,可以在 $32$ 小时内获得 $4$ 票。 1. 理惠在州 $1$ 演讲 $4$ 小时,获得该州选票。 2. 理惠在州 $2$ 演讲 $11$ 小时,获得该州选票。 3. 理惠在州 $3$ 演讲 $6$ 小时,获得该州选票。 4. 理惠在州 $6$ 演讲 $11$ 小时,获得该州选票。 该输入样例满足子任务 $1, 2, 3, 4, 5, 7$ 的限制。 --- ### 样例解释 3 按如下顺序进行选举活动,可以在 $11.5$ 小时内获得 $3$ 票。 1. 理惠在州 $4$ 演讲 $7$ 小时,获得该州选票和协助者。 2. 理惠在州 $1$ 演讲 $4$ 小时,获得该州选票。同时,$1$ 名协助者在州 $2$ 演讲 $4$ 小时。 3. 理惠和 $1$ 名协助者在州 $2$ 演讲 $0.5$ 小时,获得该州选票。 该输入样例满足子任务 $2, 3, 4, 5, 7$ 的限制。 --- ### 样例解释 4 该输入样例满足子任务 $3, 4, 5, 7$ 的限制。 --- ### 样例解释 5 该输入样例满足子任务 $4, 5, 7$ 的限制。 由 ChatGPT 4.1 翻译