#P2497. Strategies
Strategies
描述
背景
比尔(Bill)、史蒂夫(Steve)和莱纳斯(Linus)参加编程竞赛,就像你现在正在参与的这场一样。他们有不同的解题策略,我们想要弄清楚谁的策略是最好的。
问题
比尔直接按照从竞赛主办方拿到题目的顺序解题。史蒂夫会先阅读所有题目,然后按照题目难度由低到高的顺序解题。莱纳斯同样会先阅读所有题目,但他雄心勃勃,会按照题目难度由高到低的顺序解题。
题目的难度通过解决该题目所需的分钟数来衡量。我们收集了统计数据,并且咨询了“神谕”拉里(Larry),所以我们知道对于各类题目,这几个人分别需要多长时间来解答。我们还发现他们三人解每道题所需的时间总是相同(这取决于题目的难度),所以他们只是解题策略有所不同。
对于多场竞赛,我们希望你能告诉我们获胜者是谁、他解决的题目数量以及他的得分。解一道题的得分是从竞赛开始到解出这道题所花费的分钟数。总得分是解出的所有题目的得分总和。这几个人从不出错,所以你无需考虑罚时。获胜者是解出题目数量最多的人;如果解题数量相同,则是总得分最低的人获胜。如果仍然平局,他们一致认为史蒂夫获胜,因为他总会带来美味的苹果派。
输入
第一行包含测试用例的数量。每个测试用例描述一场竞赛,其第一行会告诉你竞赛持续的时长(以分钟为单位,范围是到)以及题目数量(范围是到)。在第二行,你会得到题目的难度,如上文所述,这些数字表示他们解出这些题目需要花费的分钟数(范围是到)。
输出
每个测试用例的输出以一行“Scenario #i:”开头,其中是从开始的测试用例编号。然后打印一行,说明谁是获胜者、他解出的题目数量以及他的得分。使用如下示例输出中所示的精确格式,即使获胜者只解出道或道题。每个测试用例的输出以一个空行结束。
输入数据1
2
180 6
23 42 170 33 7 19
60 2
43 17
输出数据1
Scenario #1:
Steve wins with 5 solved problems and a score of 288.
Scenario #2:
Steve wins with 2 solved problems and a score of 77.
来源
2005年德国达姆施塔特工业大学编程竞赛(训练赛)