簡單好玩的演算法(二)

2021-08-03 08:35:52 字數 833 閱讀 6780

有36輛賽車,6個跑道,沒有計時工具,要想得到最快的前三名,最多要在跑道上進行幾次賽車比賽。

其實這個問題將其模型等價成乙個6x6方陣(或者二維陣列)排序問題。

無論怎麼算,首先肯定要先分六組,自行比賽分前後順序,進行橫向排序。進行6次

然後是對每組的第一進行比賽,得到縱向排序。(這裡用來區分組別,分別用不同的編碼,速度1>a>a>甲》ⅰ>天)進行1次

緊接著一定注意看:第一組的第四名和後面三組已經無法進去前三名。即這就變成了3x3的矩陣。進行0次

繼續分析(因為還能簡化):第二組的c前面有b,a還有1都比他速度都快,所以他也進不了前三名。同理,第三組b和c前面有a,a,1都比他快,也進不了前三名。這樣之後再看矩陣

這樣之後就剩下六個數值了,再進行最後一次比賽就可以知道前三名了。(當然如果再優化,第一名可以不用參加)進行1次

最後把次數相加就是6+1+1 = 8次

演算法其實很好玩

先有工程問題需要解決,演算法是解法,設計演算法就是尋求解法。雖然演算法作為一門科學是歸納尋求解法的思路,但學習這種歸納法的前提是能體會各種具體演算法的用處和效果。王益 摘自 演算法的樂趣 序一 全文按照先易後難順序進行排版。可能會有很多人對這種方法不屑一顧,但是就能夠很好的解決問題這一點來說,能抓到...

分享個好玩的演算法遊戲

筆者簡介 從小就不是個勤奮的孩子,一般事情都保持中游水平。對事情也沒窮極的精神,所以我更喜歡聽別人分享事情,從而去發現別人身上的優點。如果用三分鐘熱度來形容我再恰當不過了,我會把應該做的事做好至於其他的?看心情!很羨慕那些有思想有作為的人,在我看來他們很有 正事 當然我也會慢慢的向那個方向發展,儘管...

蠻好玩的二天

能和朋友一起玩,真的好幸福,再大的煩惱都會消除的 呵呵,打牌,好玩,下次出來一定要再打那種牌 上次還和小白說過,下次我們 出來的時候,一起玩殺人遊戲呢,可惜少了乙個人,嗯,不知何時,七個人才會再聚在一起?好難的說 不過,也一定要找個機會,畢業之後,好像已經不可能了 想重灌系統,不經意之間,我又翻出來...