1樓:wzd
這題題意不明確,B要找的球是A,B在A進入前都知道,還是只有B一人知道?這點沒講清,無論什麼策略都沒用。
最簡單策略是A,B都預知找50號球,A進去後開啟奇數號50個箱子,使50號球到偶數號箱子,B開啟偶數號就成功了。
2樓:Kilo 5723
挺有意思。
不妨對編號 1~100 建 100 個點,將「編號為 x 的桶裡放了編號為 y 的球」這樣的關係看作 x 向 y 連了一條邊,那麼檢視某個桶裡的小球就相當於確定圖中某乙個點的出邊。顯然所有的點入度出度都為 1,故這個圖由數個環構成。這樣,作為 B 有一種策略就是遍歷 x 所在的環,也就是從 x 開始不斷移向 x 出邊指向的點,直到回到 x。
在題目背景裡就是:假設要找編號為 x 的球,就從編號為 x 的桶出發,檢視 x 號桶裡裝著 y 球、檢視 y 號桶裡裝著 z 球 …… 直到檢視 w 號桶裡裝著 x 球,就找到 x 球了。
接下來想想這種策略何時會失效:顯然,如果 x 所在的環上有超過 50 個點,就無法在 50 步內找到 x 球了。那麼,A 的任務就是利用這一次交換球的位置使得圖中不存在大小超過 50 的環。
在這張圖中,交換兩個桶中的球的操作相當於是交換了兩個節點的出邊。不可能有超過乙個環的大小超過 50,所以交換一次看起來是很有希望達到目的的。作為 A 有一種思路:
只要保證 A 查詢過的 50 個點和剩下 50 個點之間沒有邊相連,就一定不會有大小超過 50 的環。轉換成策略就是:A 從任意乙個點開始遍歷 A 所在的環。
如果這個環被遍歷完了,就把這個環從圖中去掉,從任意乙個新的點繼續遍歷。這樣,在操作 50 次之後,A 一定遍歷了數個(可能是零個)環加上一條鏈。承接剛才的思路,只要讓這條鏈和另外 50 個點沒有連邊就可以了。
不妨假設鏈的起點是 a,終點是 b,b 的出邊指向 c。那麼甚至不需要知道 c 桶中的小球具體是什麼,只要交換 a 桶和 c 桶中的小球就可以了。這樣,這條鏈上除了 a 的點加上 c 形成了乙個新環,而去掉 c,加入 a 的剩下 50 個點也絕不可能形成乙個大小超過 50 的環。
QED另外,像這種問題是桶裡放球,解法包含根據編號建點的題目好像越來越多了?
3樓:劉冬煜
提問的回覆裡 @好禮丶DR 說4桶不行,讓我想到最基本情況的解答,表示一下感謝。
這條回答說一下4桶策略,順便拋磚引玉一下。
A固定看1和2,B固定根據球號的奇偶性選擇看桶,如果期望得到奇數球則看1桶和3桶,否則看2桶和4桶。
根據A看到的1和2桶裡球號的奇偶性劃分,有下列四種情況:
1桶奇數號且2桶奇數號。那麼把2桶和3桶交換即可,這樣桶號的奇偶性就和球號對應了。B一定可以看到期望的球。
1桶偶數號且2桶偶數號。那麼把1桶和4桶交換即可,這樣桶號的奇偶性也和球號對應了。B同樣保證能看到期望的球。
1桶奇數號且2桶偶數號。此時A可以選擇不交換,也可選擇交換3桶和4桶。B依然根據期望球號奇偶性來看桶。
如果看到了自己期望得到的球號,則直接選擇即可;如果沒有看到,如果期望的球號是奇數則選擇4號桶,否則選擇3號桶。
1桶偶數號且2桶奇數號。A必然要交換1桶和2桶。而對於B來說情況和第三種情況相同。
如果看到,則直接選擇;如果沒看到,若期望的球號是奇數便選擇4號桶,否則選擇3號桶。
100桶的套路並沒有想出,期望大佬補充。
外匯EA交易策略一般要測試多久再能確定其穩定性?
量化平台IAITrade 乙個策略,我們經過和項調優後,整體效果是相對較好的基礎上。仍要進行樣本內外的檢驗。樣本內外的優化通常是一種特殊型別的回測,由優化週期內的多個較小的回測組成。這些優化週期在整個回測期間分開,並且始終使用優化的引數進行樣本外測試。這種技術可以優化過去市場資料段的引數值,然後通過...
趨勢策略如何保護利潤?
陸十四憶白 很簡單,以前說過 你不在意,就不需要保護了。不需要就是最大的保護。翻譯成一句話 交易市場的盈利機會多到你根本不需要思考如何去保護,應該去多找機會,而不是揪著乙個不放 廣州無為 保留假突破的蚊子肉就是事先知道是假突破,就是平倉了結,可是如果不是假突破呢?所以不存在既保留蚊子肉,又可以抓住大...
請問櫻木的最後一球山王應該採取怎樣的策略?
野間忠一郎 先說結論,山王最後漏掉櫻木是因為把流川的急停強射當成絕殺動作。實際他們沒猜錯,當時時間已經不夠,流川本來也確實是衝著絕殺去的。是射不出去後,才有的方案二,以至於櫻木也只是將將在比賽結束前射出那球。而最後時刻,因為協助防守實施絕殺者漏掉其他球員是常有的事。球迷經常賽後看錄影時,常會發現為什...