題目描述田忌很沮喪,直到他遇到了著名的軍師――孫臏。田忌採用了孫臏的計策之後,三場比賽下來,輕鬆而優雅地贏了齊王200銀幣。這實在是個很簡單的計策。由於齊王總是先出最好的馬,再出次好的,所以田忌用常規馬對齊王的超級馬,用自己的超級馬對齊王的上級馬,用自己的上級馬對齊王的常規馬,以兩勝一負的戰績贏得200銀幣。實在很簡單。
如果不止三匹馬怎麼辦?這個問題很顯然可以轉化成乙個二分圖最佳匹配的問題。把田忌的馬放左邊,把齊王的馬放右邊。田忌的馬a和齊王的b之間,如果田忌的馬勝,則連一條權為200的邊;如果平局,則連一條權為0的邊;如果輸,則連一條權為-200的邊……如果你不會求最佳匹配,用最小費用最大流也可以啊。 然而,賽馬問題是一種特殊的二分圖最佳匹配的問題,上面的演算法過於先進了,簡直是殺雞用牛刀。現在,就請你設計乙個簡單的演算法解決這個問題。
輸入輸出格式
輸入格式:
第一行乙個整數n,表示他們各有幾匹馬(兩人擁有的馬的數目相同)。第二行n個整數,每個整數都代表田忌的某匹馬的速度值(0 <= 速度值<= 100)。第三行n個整數,描述齊王的馬的速度值。兩馬相遇,根據速度值的大小就可以知道哪匹馬會勝出。如果速度值相同,則和局,誰也不拿錢。
資料規模
對於20%的資料,1<=n<=65;
對於40%的資料,1<=n<=250;
對於100%的資料,1<=n<=2000。
輸出格式:
僅一行,乙個整數,表示田忌最大能得到多少銀幣。
輸入輸出樣例
輸入樣例#1:
3
92 83 71
95 87 74
輸出樣例#1:
200
楊子曰:孫臏居然可以控制全場的馬,真不要臉,(逃
這道題的解法可以說是非常多——dp,貪心,(還有題目裡面說的轉化成最佳二分圖匹配以後用費用流,呵呵,真是好辦法),我們今天就來今天我們就來簡單的曰一曰貪心的做法:
有人提出大膽思路,比較兩邊最慢的馬,如果田忌最慢的馬比齊王最慢的馬慢,那就用田忌最慢的馬和齊王最快的馬拼掉,如果田忌最慢的馬比齊王最慢的馬快,那就乾掉,如果平局那就,額……
1.如果平局,那就平掉
隨手乙個反例:
齊王:1 2 3
田忌:1 2 3
聽取wa聲一片
2.如果平局,那就用田忌最小的和齊王最快的馬幹
隨手乙個反例:
齊王:1 2
田忌:1 3
聽取wa聲一片
可見,如果只是比較兩邊最小的馬顯然是不夠的,楊子曰過:失敗是成功之母,我認為如果最慢的馬平局了,我們可以去比較最快的馬,於是我們就可以的出了以下思路:
先排序1.田忌最慢的馬比齊王最慢的馬快,乾掉(原因:說明田忌的任何一匹馬都能乾掉齊王最慢的馬,那我們就用最慢的唄)
2.田忌最慢的馬比齊王最慢的馬慢,我們就用田忌最慢的馬和齊王最快的馬輸掉(原因:說明田忌最慢的馬無論如何都要輸,那就耗掉乙個對面最好的唄)
3.田忌最慢的馬比齊王最慢的馬一樣快,那就做下面的事情:
4.田忌最快的馬比齊王最快的馬快,乾掉(原因:說明田忌最快的馬可以乾掉齊王的任何一匹,那就乾掉最快的唄)
5.田忌最快的馬比齊王最快的馬慢,我們就用田忌最慢的馬和齊王最快的馬輸掉(原因:說明齊王最快的馬可以乾掉田忌的任何一匹,那就讓他浪費在最慢的馬上唄)
6.最快的馬也一樣快,那我們的策略是:用田忌最慢的馬和齊王最快的馬幹(原因:即使如果這樣輸掉了,馬上就可以贏回來,而且在之後贏得機率會更大,自己來幾個資料模擬一下就一清二楚了)
ok,完事
c++**:
#include
using
namespace std;
int a[
10005
],b[
10005];
intmain()
for(
int i=
1;i<=n;i++
)sort
(a+1
,a+n+1)
;sort
(b+1
,b+n+1)
;int la=
1,lb=
1,ra=n,rb=n,ans=0;
for(
int i=
1;i<=n;i++)}
} cout
}
於xj機房607 P1650 田忌賽馬
我在考試的時候看到了這道題,在一瞬間就蒙逼了,這是什麼題?請原諒我 250 250 250 的智商 於是懵裡懵懂的打了個d dd 電 f ff 風 s ss 扇 結果連樣例都沒有過。畢竟才學搜尋沒多久嘛,也就兩年 再一看,看出了田忌賽馬的味道,原來是這樣 立刻打了個貪心信心滿滿的交上去。includ...
P1650 田忌賽馬
n 齊王和田忌各有n nn匹馬,每匹馬都有乙個強度值ai bia i b i ai bi 每次齊王和田忌要從自己的n nn匹馬中選乙個上去比賽,其中齊王總是讓馬從強到弱上 若兩匹馬強度不同,則強度高的那一方將獲得200 20020 0銀幣,若強度相同,兩方都獲得不了盈利 試著替田忌安排一種讓馬上去比...
P1650 田忌賽馬
我在考試的時候看到了這道題,在一瞬間就蒙逼了,這是什麼題?請原諒我 250 的智商 於是懵裡懵懂的打了個 d 電 f 風 s 扇 結果連樣例都沒有過。畢竟才學搜尋沒多久嘛,也就兩年 再一看,看出了田忌賽馬的味道,原來是這樣 立刻打了個貪心信心滿滿的交上去。includeusing namespace...