小 Y 正在鑽研鍊金術,想要調配出一瓶強力的藥水。她的朋友小 P 提供了 $N$ 種材料,其中第 $i$ 種材料具有三個屬性 $s_i, h_i, p_i$:
小 Y 要從這 $N$ 種材料中選出一個(可能為空的)子集合來調配藥水,所選的材料必須同時滿足以下三個條件:
在滿足以上三個條件的前提下,藥水的威力和所使用的能量總和成正比,因此小 Y 希望所選材料的能量總和越大越好。請幫小 Y 求出,在所有合法的選法中,能量總和最大可以是多少;如果不存在合法的選法,請輸出 $-1$。
輸入第一行有三個正整數 $N, t, H$,代表材料的數量、鍊金鍋爐一次最多能承受的能量,以及藥效總和至少要達到的門檻。
接下來 $N$ 行,第 $i$ 行有三個整數 $s_i, h_i, p_i$,代表第 $i$ 種材料的屬性差、藥效與能量。
輸出一行一個整數,代表在滿足所有限制的前提下,能量總和的最大值;若不存在合法的選法,輸出 -1。
4 9 5 2 3 5 -2 2 4 1 1 1 -1 4 6
9
3 100 1 5 1 1 3 1 1 2 1 1
-1
範測 1 解釋:
選擇第 $1$ 種與第 $2$ 種材料,屬性差總和為 $2 + (-2) = 0$,藥效總和為 $3 + 2 = 5 \geq H = 5$,能量總和為 $5 + 4 = 9 \leq t = 9$,恰好用滿鍋爐的容量。可以證明這是能量總和最大的合法選法。
範測 2 解釋:
三種材料的屬性差分別為 $5, 3, 2$,任何非空子集合的屬性差總和都不可能是 $0$;而選擇空集合的話,藥效總和為 $0$,小於 $H = 1$。因此不存在合法的選法,輸出 $-1$。
2026 YTP 國中組決賽 p11
| No. | Testdata Range | Constraints | Score |
|---|---|---|---|
| 1 | 0~1 | 範例測試資料 | 0 |
| 2 | 2~28 | $N \leq 20$ | 4 |
| 3 | 29~45 | $s_i = 0$ | 4 |
| 4 | 46~67 | $H = 1$ | 4 |
| 5 | 0~107 | 無額外限制 | 13 |