题目名称 3538. 田忌再赛马
输入输出 ultrahorse.in/out
难度等级
时间限制 500 ms (0.5 s)
内存限制 256 MiB
测试数据 5
题目来源 GravatarTheresis 于2021-03-01加入
开放分组 全部用户
提交状态
分类标签
动态规划 贪心
分享题解
通过:4, 提交:17, 通过率:23.53%
Gravatar遥时_彼方 100 0.000 s 0.00 MiB C++
Gravatar空条承太郎& 100 0.000 s 0.00 MiB C++
GravatarTheresis 100 0.013 s 1.43 MiB C++
GravatarTheresis 100 0.070 s 11.17 MiB C++
Gravatar遥时_彼方 80 0.000 s 0.00 MiB C++
Gravatar空条承太郎& 80 0.000 s 0.00 MiB C++
Gravatar空条承太郎& 80 0.000 s 0.00 MiB C++
Gravatar空条承太郎& 80 0.000 s 0.00 MiB C++
Gravatar空条承太郎& 60 0.000 s 0.00 MiB C++
Gravatar空条承太郎& 60 0.000 s 0.00 MiB C++
关于 田忌再赛马 的近10条评论(全部评论)
做道水题压压惊
Gravatar遥时_彼方
2022-06-29 16:39 1楼

3538. 田忌再赛马

★   输入文件:ultrahorse.in   输出文件:ultrahorse.out   简单对比
时间限制:0.5 s   内存限制:256 MiB

题目背景

这是中国历史上一个著名的故事,那是大约1919年前的事了

田忌将军是齐国的高官,他喜欢和国王、其他人一起赛马。田忌和国王都有三匹不同等级的马,分别是普通马、强化马和超级马。规则是一场比赛有三轮;每轮只能用一次某一匹马,单轮比赛的胜者从失败者手中拿走两百银元。

作为这个国家最有权势的人,国王最好的马,在每一个阶级他的马都比田忌的好,结果每次国王都从田忌那里拿走六百银元

田忌对此并不高兴,直到遇到中国历史上最著名的将领之一--孙膑。由于孙膑的一个小把戏,田忌在下一场比赛中赚回了两百银元。这是一个相当简单的把戏,用他的普通马对抗国王的超级马,这样他肯定会输掉那一轮,但后来他的强化马打败了国王的普通马,他的超级马打败了国王的强化马,多简单的把戏啊。

你觉得古代中国的高官田忌怎么样?如果田忌现在生活在这里,他一定会自嘲的。更重要的是,如果他现在参加ACM竞赛,他可能会发现赛马问题可以简单地看作是在二分图图中寻找最大匹配的问题。但是作为一个古代人,田忌不会编程,所以只能请你来帮忙。

【题目描述】

中国古代的历史故事“田忌赛马”是为大家所熟知的。

话说齐王和田忌又要赛马了,他们各派出N匹马(N≤2000),每场比赛,输的一方将要给赢的一方200两黄金,如果是平局的话,双方都不必拿出钱。

现在每匹马的速度值是固定而且已知的,而齐王出马也不管田忌的出马顺序。请问田忌该如何安排自己的马去对抗齐王的马,才能赢最多的钱?

【输入格式】

一个整数N(N≤2000),是双方派出的马数量。

接下来2行,每行N个数,第一行第i个数为田忌派出的马的速度值Vi,第二行第i个数为齐王派出的马的速度值Ei。

【输出格式】

一个整数,代表田忌比赛过后获得的最大黄金数量(如果亏损则输出负数)。

【样例输入】

3
92 83 71
95 87 74

【样例输出】

200

【来源】

上海ACM 2004

【提示】

本题有多种解法,可以不局限于使用一种算法思路来解决