AT_joi2015yo_f 財宝 (Treasures)

题目描述

盗贼 Anna 和 Bruno 潜入了一位大富豪的宅邸,发现了从第 $1$ 件到第 $N$ 件共 $N$ 件宝物。现在需要将这些宝物在 Anna 和 Bruno 之间分配。Anna 可以取其中一些宝物,Bruno 可以从剩下的宝物中取一些。每件宝物只能被一个人取走,不能两个人都取同一件宝物。Anna 和 Bruno 也可以什么都不取。同时,也允许有些宝物两个人都不取,留在宅邸中。 每件宝物都有两个属性:“市场价值”和“贵重度”。如果 Anna 取走的宝物的市场价值总和与 Bruno 取走的宝物的市场价值总和的差的绝对值不超过 $D$,Anna 就会觉得分配公平并感到满意。而 Bruno 希望自己拿到的宝物的贵重度总和尽可能比 Anna 多。 请你在保证 Anna 满意的前提下,求出 Bruno 取走的宝物的贵重度总和减去 Anna 取走的宝物的贵重度总和的最大值。

输入格式

输入共 $1+N$ 行。 第 $1$ 行包含两个整数 $N, D$($1 \leq N \leq 30$,$0 \leq D \leq 10^{15}$),表示宝物的数量为 $N$,以及 Anna 满意的市场价值差的绝对值上限为 $D$。 接下来的 $N$ 行中,第 $i$ 行($1 \leq i \leq N$)包含两个整数 $X_i, Y_i$($0 \leq X_i \leq 10^{15}$,$0 \leq Y_i \leq 10^{15}$),表示第 $i$ 件宝物的市场价值为 $X_i$,贵重度为 $Y_i$。 在给定的 $5$ 组输入数据中,输入 $1$ 满足 $N \leq 10$,输入 $2$ 满足 $D = 0$。

输出格式

请输出在 Anna 满意的前提下,Bruno 取走的宝物的贵重度总和减去 Anna 取走的宝物的贵重度总和的最大值。

说明/提示

### 样例解释 1 在样例输入 $1$ 中,如果 Anna 取第 $2$、第 $3$ 和第 $5$ 件宝物,Bruno 取第 $1$ 和第 $6$ 件宝物,则 Anna 取走的宝物的市场价值总和为 $130$,Bruno 为 $120$,两者差的绝对值为 $10$,不超过 $D=15$,所以 Anna 满意。此时 Anna 取走的宝物的贵重度总和为 $400$,Bruno 为 $1\,600$,两者相减为 $1\,200$,这是最大值。 由 ChatGPT 4.1 翻译