回分類題庫
d060: 約瑟夫問題
出處:

Difficulity : 1
Accepted : 76 Times | Submit :617 Times | Clicks : 6888
Accepted : 45 Users | Submit : 103 Users | Accepted rate : 44%
Time Limit :90000 ms | Memory Limit : 32001 KBytes
題目加入時間 : 2008-10-31 23:51

Content :

將n個人排成一個圓圈,從第一個人開始算起,每數到第m個人那個人就得自殺。範例:假設有4個人的圓圈,且每兩個人就自殺,那麼第一個自殺的是第二個人,接下來是第四個人,接著是第三個人,最後自殺的是第一個人。

Input :

輸入為多行,每行有三個正整數 n, m, k,0 < n ≤ 10000,0 < m ≤ 10000,0 < k ≤ n。

Output :

輸出 n 個人一圈,每 m 個人就殺掉,第 k 個被殺掉的人。

Sample Input :

4 2 4
10000 9999 10000

Sample Output :

1
3377

Hint :

用List結構模擬,另外存在有快速的數學解。

Author :

(管理員:yuhanlyu)

  Solve it!   Status Forum (6)

C++
C
JAVA
21448. juston (80 ms , 366KB)
68844. ga771358 (92 ms , 222KB)
64380. trayrant (112 ms , 668KB)
53658. alun0922 (122 ms , 666KB)
27975. ISO (122 ms , 358KB)
12246. ds97703031 (74 ms , 242KB)
8060. yuhanlyu (74 ms , 230KB)
18234. PhySeraph (76 ms , 236KB)
20593. erdfcv0521 (80 ms , 232KB)
8061. yuhanlyu (88 ms , 464KB)
90844. nwgs524513cja ( 5.7 s , 20528KB)
75958. ag100j ( 26.3 s , 3538KB)
66418. nwgs524513cja ( 27.5 s , 21584KB)

執行時間會受很多因素影響因此僅供參考,主機等級請看這裡