題目:有n個人圍成一圈,順序排號。從第一個人開始報數(從1到3報數),凡報到3的人退出圈子,問最后留下的是原來的第幾號的那位 思路:用一個數組存這n個人,里面的初始狀態全設為1,表示都還在圈子里面。 然后用q來記錄報的號,因為每次報號報到3的人就得退出圈子,用j來表示圈子內剩余的人 ...
一 問題描述: 有 個人圍成一圈 編號為 ,從第 號的人開始從 報數, 凡報到 的倍數的人離開圈子,然后再數下去,直到最后只剩下一個人為止。 問此人原來的位置是多少號 二 問題解決: .定義數組記錄每個編號的狀態 是否被淘汰 .在未被淘汰的人中檢查是否數到 ,若是,淘汰此人 .繼續此過程至所有人被淘汰 三 示例代碼: View Code ...
2015-12-13 22:40 0 3725 推薦指數:
題目:有n個人圍成一圈,順序排號。從第一個人開始報數(從1到3報數),凡報到3的人退出圈子,問最后留下的是原來的第幾號的那位 思路:用一個數組存這n個人,里面的初始狀態全設為1,表示都還在圈子里面。 然后用q來記錄報的號,因為每次報號報到3的人就得退出圈子,用j來表示圈子內剩余的人 ...
0; printf("輸入約瑟夫圈大小"); scanf("%d",&N); for(i=0;i< ...
C# with Array using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ...
首先,我最大的學習來源不是百度而是我群友~~在這里表白一波我熱愛學習的群友們!然后今天群里突然有人提出了題目的這個問題:有n個人圍成一圈,順序排號。從第一個人開始報數(從1到3報數),凡報到3的人退出圈子,問最后留下的是原來第幾號的那位。 冥思苦想了半天(好吧,我承認我就審了審題目就百度 ...
有n個人圍成一圈,順序排號。從第1個人開始報數(從1到3報數),凡報到3的人退出圈子,問最后留下的是原來第幾號的那位 解題思路: 從第一個人開始,逐個報數,誰報3就退出,並且重置報數,直到最后一個人后,又重新從第一個人繼續報數,直到最終只剩一個人的時候退出即可。 答案: ...
這一道題,在剛學完指針之后的第一個禮拜,無意間看到課后練習,就去思考,起先不會做,想了很久,只有一點思路,但是還是不能把代碼完整的寫出來,后來就去百度,看了貼吧,發現這是經典問題了,俗名猴子選大王,發現很多種方法,我就挑其中的一種符合我這種初學者的方法,不過貼吧沒有注釋,一開始不理解,估計也有 ...
題目:有n個人圍成一圈,順序排號。從第一個人開始報數(從1到3報數),凡報到3的人退出圈子,問最后留下的是原來第幾號的那位。 解題思路: 一直遍歷這個數組,每隔2個刪除一個元素,直到只剩下一個元素 如果遇到了數組的結尾,那么就跳轉到開頭 ...