艾莉絲的母親每天會給他一些零用錢讓他購買食物。艾莉絲不挑食,而且胃口極好,可以說有多少吃多少。他希望能用有限的零用錢買到很多食物食用、讓他當天的飽食度最高。你的任務是找出如何在有限的零用錢內,購買能讓艾莉絲飽食度達到最大值的食物組合。
第一行有兩個整數分別是 n 與 m,
n 表示有多少種類的食物,m 表示艾莉絲的零用金額。(n 與 m 以空白隔開)
第二行有 n 組資料,每一組資料格式為食物價格 t 與食物飽食度 w,t 與 w 以逗點 ',' 隔開,不同的食物資料之間用空白分隔。每一種食物輸入的順序就是該食物編號。編號從 0 開始。
每個食物的數量沒有限制。
(註: 1≤n≤50,1≤m≤105,1≤ti , wi≤100)
輸出購買的所有食物編號及數量,每行的格式為「食物編號 數量」(空白分隔)。每個食物的輸出用換行分隔,並按編號升序排列。
如果有相同飽食度的食物組合,則以零用錢剩餘最多的為主。
如果飽食度相同,且零用金剩餘也相同,則以食物編號最小的輸出。
如果艾莉絲的零用錢不足以購買任何食物,則輸出 -1。
6 18 6,7 5,5 7,8 10,12 3,2 2,1
0 3 21
6 22 6,7 5,5 7,8 10,12 3,2 2,1
0 2 3 1 26
3 25 12,6 13,7 24,13
2 1 13
4 16 3,5 5,8 11,18 13,21
0 2 2 2 26
編號 | 身分 | 題目 | 主題 | 人氣 | 發表日期 |
沒有發現任何「解題報告」 |