今天我試圖解決一個Facebook Programming Challenge。我得到的挑戰是'酒吧問題',可以找到here。在挑戰過程中,我的問題是理解他們提供的第一個例子。給出N個給定集合中每個給出第K個最大數字的例子嗎?
ň朋友在玩一個遊戲:
問題可以總結如下。他們每個人都有自己前面的數字列表。
N個朋友中的每個朋友從他的列表中選擇一個號碼並將其報告給遊戲管理員。然後遊戲管理員對報告的數字進行排序,並喊出第K個最大的數字。
你想知道遊戲管理員可以喊出的所有可能的數字。
到這一點我認爲我已經理解這個問題,但接着就提出了以下示例:
在示例實施例中給出,對於第一測試用例N = 3且K = 3.列出第一人爲{2 5 3},第二人爲{8 1 6},第三人爲{7 4 9}。在這種情況下,{4,5,6,7,8,9}中的所有數字都有機會成爲第三大選中的數字。
所以我的問題是:
如何7,8和9的第三大選擇的號碼?
在我看來,只有數字{1,2,3,4,5}可以是第三大數字,但也許我誤解了算法。
他們當然不能。目前還不清楚問題作者究竟意味着什麼。 –
如果任何人有興趣,他們從來沒有迴應我的反饋,我向他們報告了問題。如果其他參加過測試的人能夠確定問題是否已經修改,那將會很好。 – snrlx
我最近接受了它。它仍然是一樣的,因爲你不瞭解作者的意圖。由3位參賽者(N = 3)組成的第3位數(K = 3),第3位數表示所有提交數**的最大數,**滿足測試案例。也許你正在考慮從最大的三分之一*這句話顯然不是最好的。 – sjagr