站外题求解
  • 板块题目总版
  • 楼主LiGaYb
  • 当前回复12
  • 已保存回复12
  • 发布时间2024/10/7 15:01
  • 上次更新2024/10/7 16:34:57
查看原帖
站外题求解
935689
LiGaYb楼主2024/10/7 15:01

Alice最近在抽奖活动中抽中了一等奖。她可以免费获得一些礼品作为奖励。 当前有n个不同的礼品排成一排,其中第i个礼品的重量为w[i],价值为v[i]。显然每个礼品只能被Alice拿走一个。为了避免在选择礼品上耽误太多时间,Alice只想选择一段连续区间中的礼品带走。 根据活动规则要求,Alice选择带走礼品的总重量不能超过m。请编写一个程序,帮助Alice选择一段连续的礼品,使得这段礼品总重量不超过m,且价值之和最大。 输入格式 从文件 gift.in 中读入数据。 输入第一行包含两个整数n和m,表示礼品的个数和可以带走礼品的总重量上限。 之后n行,每行两个整数w[i]和v[i],分别表示第个礼品的重量和价值。 输出格式 输出到文件 gift.out 中。 输出只有一行,该行仅包含一个整数,表示Alice挑选的礼品总价值最大是多少。 样例:

9 1615
914 790
574 220
725 560
303 179
611 257
449 508
698 310
858 335
980 32

对应输出:

1010
2024/10/7 15:01
加载中...