猴子选大王 PascalDescription 有n个猴子分别编号为1,2,3,...,n,按顺时针方向围成一个圈选大王.从第一号开始报数1,2,.,数到m号时该猴子出圈,再如此报数直到圈内只剩一只猴子时,此猴子便是大王.Inp
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/09 04:52:50
![猴子选大王 PascalDescription 有n个猴子分别编号为1,2,3,...,n,按顺时针方向围成一个圈选大王.从第一号开始报数1,2,.,数到m号时该猴子出圈,再如此报数直到圈内只剩一只猴子时,此猴子便是大王.Inp](/uploads/image/z/5235775-7-5.jpg?t=%E7%8C%B4%E5%AD%90%E9%80%89%E5%A4%A7%E7%8E%8B+PascalDescription+%E6%9C%89n%E4%B8%AA%E7%8C%B4%E5%AD%90%E5%88%86%E5%88%AB%E7%BC%96%E5%8F%B7%E4%B8%BA1%2C2%2C3%2C...%2Cn%2C%E6%8C%89%E9%A1%BA%E6%97%B6%E9%92%88%E6%96%B9%E5%90%91%E5%9B%B4%E6%88%90%E4%B8%80%E4%B8%AA%E5%9C%88%E9%80%89%E5%A4%A7%E7%8E%8B.%E4%BB%8E%E7%AC%AC%E4%B8%80%E5%8F%B7%E5%BC%80%E5%A7%8B%E6%8A%A5%E6%95%B01%2C2%2C.%2C%E6%95%B0%E5%88%B0m%E5%8F%B7%E6%97%B6%E8%AF%A5%E7%8C%B4%E5%AD%90%E5%87%BA%E5%9C%88%2C%E5%86%8D%E5%A6%82%E6%AD%A4%E6%8A%A5%E6%95%B0%E7%9B%B4%E5%88%B0%E5%9C%88%E5%86%85%E5%8F%AA%E5%89%A9%E4%B8%80%E5%8F%AA%E7%8C%B4%E5%AD%90%E6%97%B6%2C%E6%AD%A4%E7%8C%B4%E5%AD%90%E4%BE%BF%E6%98%AF%E5%A4%A7%E7%8E%8B.Inp)
猴子选大王 PascalDescription 有n个猴子分别编号为1,2,3,...,n,按顺时针方向围成一个圈选大王.从第一号开始报数1,2,.,数到m号时该猴子出圈,再如此报数直到圈内只剩一只猴子时,此猴子便是大王.Inp
猴子选大王 Pascal
Description
有n个猴子分别编号为1,2,3,...,n,按顺时针方向围成一个圈选大王.从第一号开始报数1,2,.,数到m号时该猴子出圈,再如此报数直到圈内只剩一只猴子时,此猴子便是大王.
Input
只有一行两个整数n和m,n和m用空格隔开(1 < =n,m〈 =1000)
Output
只有一个数,所选猴子大王的编号.
Sample Input
10 3
Sample Output
4
猴子选大王 PascalDescription 有n个猴子分别编号为1,2,3,...,n,按顺时针方向围成一个圈选大王.从第一号开始报数1,2,.,数到m号时该猴子出圈,再如此报数直到圈内只剩一只猴子时,此猴子便是大王.Inp
var a:array[0..1000] of boolean;
m,n,i,s,t:integer;
begin
readln(n,m);
fillchar(a,sizeof(a),true);
s:=0;
i:=1;
while true do
begin
t:=0;
while true do
begin
if a[i]=true then
begin
t:=t+1;
if t=m then break;
end;
i:=(i+1) mod n;
if i=0 then i:=n;
end;
a[i]:=false;
s:=s+1;
if s=n then break;
end;
writeln(i);
end.