題目描述
n個人圍成一圈,從第一個人開始報數,數到m的人出列,再由下一個人重新從1開始報數,數到m的人再出圈,依次類推,直到所有的人都出圈,請輸出依次出圈人的編號。樣例輸入
10 3樣例輸出
3 6 9 2 7 1 8 5 10 4思路
O(nm)還在冥思苦想要模擬的小伙伴們要哭了,這道題早已有公式啦~~~但是這道題不能直接輸出最后那個人,要輸出順序=_=。var a:array[1..100] of longint; n,m,p,i,j:longint;begin readln(n,m); for i:=1 to n-1 do a[i]:=i+1; a[n]:=1; p:=n; for i:=1 to n do begin for j:=1 to m-1 do p:=a[p]; write(a[p],' '); a[p]:=a[a[p]]; end;end.