數學問題集(N)---軍訓3

2010-09-25 7:31 am
1000人站在一行,自1-1000依次報數,凡報(3的倍數+1)者出隊(即1,4,7,…);留下的再從1起報數,報(3的倍數+1)者又出隊,這樣反覆下去,直到留下1個人,問這人第一次報數是多少?
更新1:

提示,考慮出隊前後的排位,從而由新排位推敲出舊排位的公式f(x). 例如新排位是第一位,那麼舊排位必定是第二位,即f(1)=2…

回答 (4)

2010-09-28 2:06 am
✔ 最佳答案
710

2010-09-27 18:06:29 補充:
經過一次篩選後,設第 i個數留下,則新數= i- [ (i+2)/3 ]
(Note: [x]=the greatest integer function)
經多次篩選後,最後一個報數必為1
故解 i-[(i+2)/3]=1, 得 i(最小)=2
再解 i-[(i+2)/3]=2, 得 i(最小)=3
再解 i-[(i+2)/3]=3, 得 i(最小)=5
再解 i-[(i+2)/3]=5, 得 i(最小)=8
再解 i-[(i+2)/3]=8, 得 i(最小)=12
再解 i-[(i+2)/3]=12, 得 i(最小)=18
再解 i-[(i+2)/3]=18, 得 i(最小)=27
...(規則: 設前一數為x, 則下一數=[3x+1]/2 )
得 1, 2, 3, 4, 8, 12, 18, 27, 41, 62, 93, 140, 210, 315, 473, 710, 1065
則710~1064之前的正整數經篩選後,最後均剩下710
本題為1000之前的正整數,故篩選最後剩下710

2010-09-27 18:20:13 補充:
規則: 設前一數為x, 則下一數=[ (3x+1)/2 ]
2010-09-27 11:18 am
設g(n)為報數人數n時,留下最後1人第一次報數數值
g(1)=1,g(2)=2,g(3)=3,g(5)=5,g(8)=8,g(12)=12,g(18)=>18
g(27)=27,g(41)=41,g(62)=62,g(93)=93,g(140)=140,g(210)=210
g(315)=315,g(473)=473,g(710)=710,g(1065)=1065
人數710至1064解答=710

沒有找出規則
2010-09-26 8:50 pm
這人第一次報數是288
2010-09-26 3:19 am
為甚麼不直接作答?並說明步驟.

2010-09-25 22:27:50 補充:
3的倍數=0,3,6,9,12...

2010-09-27 14:33:05 補充:
螞蟻雄兵:考慮1,2,3,5,8,12...為一數列又怎樣?


收錄日期: 2021-04-23 23:23:56
原文連結 [永久失效]:
https://hk.answers.yahoo.com/question/index?qid=20100924000051KK03576

檢視 Wayback Machine 備份