作者LPH66 ((short)(-15074))
看板Inference
標題Re: [問題] 找規律
時間Wed Nov 12 11:33:32 2008
※ 引述《bluehaerts (5858笨58)》之銘言:
: 1. 有1000人照編號排一行 1,2,3報數
: 報到3的人退出 其餘往前靠攏
: 重複進行 做到剩最後3個人為止
: 請問這3個人分別再原隊伍的第幾號位子??
先看看幾次之後會剩3個人:
1000 => 667 => 445 => 297 => 198 => 132 => 88 => 59 => 40 => 27
=> 18 => 12 => 8 => 6 => 4 => 3
這樣是15次
再來像drtesy版友一樣來觀察存活者的號碼變化
這裡我把每個人也從0編號起
首先 只要一變成3k+2 下一輪就出局
然後不是3k+2的人的號碼就會減去前面出局的人數 = 他的號碼除以3的整數部份
反過來 只要他這輪活下來了
那他上一輪的號碼就是這一輪的號碼加上這一輪號碼除以2的整數部份
也就是這輪活下來的3 上一輪是3+1=4 再上一輪是4+2=6 etc.
那麼 15輪之後活下來的2 (第三個人)
在14輪是2+1=3 13輪是3+1=4 12輪是4+2=6 11輪是6+3=9
10輪是9+4=13 9輪是13+6=19 8輪是19+9=28 7輪是28+14=42
6輪是42+21=63 5輪是63+31=94 4輪是94+47=141 3輪是141+70=211
2輪是211+105=316 1輪是316+158=474 0輪是474+237=711
因此留下來的第三個人就會是我的編號的711 也就是第712個人
--
"LPH" is for "Let Program Heal us"....
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.30.84
1F:推 bluehaerts:太神了 11/12 12:31
2F:推 mike7788:br 11/12 12:39
3F:推 east101010:我寫個c語言程式跑出來的結果也是712是第三位仁兄 11/12 16:28
4F:推 bluehaerts:樓上這位大大 我想看看C的程式 請問可以寄給我嗎 11/12 17:56
5F:→ bluehaerts:C的新手 不知道 要從哪下手 11/12 17:58
6F:推 allen65535:原來這題本來就是C語言的作業 XD 11/18 17:09
7F:推 b60624563:可不可以也寄給我?? 我用VB有寫出來.. 可是方法很笨.. 02/17 01:53