原文:java解答:有17個人圍成一圈(編號0~16),從第0號的人開始從1報數,凡報到3的倍數的人離開圈子,然后再數下去,直到最后只剩下一個人為止,問此人原來的位置是多少號?

加班回來的路上看到一個這樣的題,題目就是標題, 原題地址:http: www.cnblogs.com tonybinlj archive .html ,然后自我感覺用了個比較拙劣的方式,最后還是實現了。這里的 和 當然可以當做參數m,n來處理。。 弄完網上找了找。C系列實現形式思路基本上是一樣的。 然后數學好的三行代碼就搞定了。。遍歷次數也是最少的。效率達到O n : ...

2017-10-28 00:19 0 1248 推薦指數:

查看詳情

17圍成一圈,從0的人開始報數報到3的倍數的人離開圈子然后再下去直到最后只剩下一個人為止此人原來位置是多少

17圍成一圈,從0的人開始報數報到3的倍數的人離開圈子然后再下去直到最后只剩下一個人為止此人原來位置是多少。 無意中在天涯很老的帖子看到這個問題。分析如下。 感覺這個更像是一道小學或者中學的算術題。只不過是要通過程序的方式去演示一下這個過程。 最 ...

Fri Nov 23 18:37:00 CST 2012 0 4760
有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