原文:C語言——N個人圍成一圈報數淘汰問題

一 問題描述: 有 個人圍成一圈 編號為 ,從第 號的人開始從 報數, 凡報到 的倍數的人離開圈子,然后再數下去,直到最后只剩下一個人為止。 問此人原來的位置是多少號 二 問題解決: .定義數組記錄每個編號的狀態 是否被淘汰 .在未被淘汰的人中檢查是否數到 ,若是,淘汰此人 .繼續此過程至所有人被淘汰 三 示例代碼: View Code ...

2015-12-13 22:40 0 3725 推薦指數:

查看詳情

n圍成一圈報數

題目:有n個人圍成一圈,順序排號。從第一個人開始報數(從1到3報數),凡報到3的人退出圈子,問最后留下的是原來的第幾號的那位 思路:用一個數組存這n個人,里面的初始狀態全設為1,表示都還在圈子里面。 然后用q來記錄報的號,因為每次報號報到3的人就得退出圈子,用j來表示圈子內剩余的人 ...

Tue Jan 16 19:32:00 CST 2018 0 2396
約瑟夫環問題:有n個人圍成一圈,順序排號。從第一個人開始報數(從1到3報數),凡報到3的人退出圈子,問最后留下的是原來第幾號的那位。

首先,我最大的學習來源不是百度而是我群友~~在這里表白一波我熱愛學習的群友們!然后今天群里突然有人提出了題目的這個問題:有n個人圍成一圈,順序排號。從第一個人開始報數(從1到3報數),凡報到3的人退出圈子,問最后留下的是原來第幾號的那位。 冥思苦想了半天(好吧,我承認我就審了審題目就百度 ...

Wed Sep 04 01:58:00 CST 2019 0 1043
n個人圍成一圈,順序排號。從第1個人開始報數(從1到3報數),凡報到3的人退出圈子,問最后留下的是原來第幾號的那位

n個人圍成一圈,順序排號。從第1個人開始報數(從1到3報數),凡報到3的人退出圈子,問最后留下的是原來第幾號的那位 解題思路: 從第一個人開始,逐個報數,誰報3就退出,並且重置報數,直到最后一個人后,又重新從第一個人繼續報數,直到最終只剩一個人的時候退出即可。 答案: ...

Thu Sep 03 02:14:00 CST 2020 0 622
n個人圍成一圈,順序排號。從第一個人開始報數(從1到3報數),凡報到3的人退出圈子,問最后留下的是原來第幾號的那位。

這一道題,在剛學完指針之后的第一個禮拜,無意間看到課后練習,就去思考,起先不會做,想了很久,只有一點思路,但是還是不能把代碼完整的寫出來,后來就去百度,看了貼吧,發現這是經典問題了,俗名猴子選大王,發現很多種方法,我就挑其中的一種符合我這種初學者的方法,不過貼吧沒有注釋,一開始不理解,估計也有 ...

Tue Dec 08 20:56:00 CST 2015 6 55239
n個人圍成一圈,順序排號。從第一個人開始報數(從1到3報數),凡報到3的人退出圈子,問最后留下的是原來第幾號的那位。

題目:有n個人圍成一圈,順序排號。從第一個人開始報數(從1到3報數),凡報到3的人退出圈子,問最后留下的是原來第幾號的那位。 解題思路: 一直遍歷這個數組,每隔2個刪除一個元素,直到只剩下一個元素 如果遇到了數組的結尾,那么就跳轉到開頭 ...

Fri May 31 06:49:00 CST 2019 0 1905
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM