这道题的核心在于分析消除过程的可选奖励集合变化规律,并利用贪心策略分别求最大和最小总奖励。
操作始终合法 由于初始宝石序列中任意相邻两颗宝石类型都不相同,删除任意一对相邻宝石后,剩下的序列仍然满足相邻不同类型。因此每一步都可以任意选择当前存在的任意一对相邻宝石进行消除。
操作次数固定 每次消除会移除两颗宝石,游戏进行到宝石数量 ≤ 1 时结束。因此无论采用何种消除顺序,总操作次数均为
在一款古老的消除游戏中,有 n 个宝石排成一行,宝石只有两种类型,且任意相邻两颗宝石的类型都不相同。宝石依次编号为 1 到 n。
在两颗相邻宝石 i 和 i+1 之间,存在一个隐藏的奖励数值 bi (1≤i≤n−1)。当你选择一对相邻宝石并消除它们时,你将获得对应的奖励 bi。消除后,剩余的宝石保持原有相对顺序重新拼接在一起。由于任意相邻宝石类型都不同,因此每次选择任意一对相邻宝石都是合法的。
奖励数组 b 的长度固定为 n−1,且不会因为消除操作而改变。也就是说,即使在消除操作之后,当你选择当前序列中第 i 颗和第 i+1 颗宝石时,你获得的奖励依然是初始数组中 bi 的值(奖励值与其在原始序列中的位置绑定,直到该位置不再存在)。
你可以不断进行消除操作,直到无法继续(剩余宝石数量不超过 1)。设你总共进行了 m 次消除,获得的奖励之和为 S。现在,请你分别求出在所有可行的消除方案中,S 可能取得的最大值以及最小值。
数据范围与约束
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册