cf狙击火线时刻视频:约瑟夫环程序who用pascal写了?

来源:百度文库 编辑:查人人中国名人网 时间:2024/05/11 13:52:20
这年头咋没人用pascal?!@#$%^&*_+:">?

哪位用fp写出了约瑟夫 程序供小妹我参考 定感激不尽。。

qq:403211056 e-mail:jingyi_sjy@yahoo.com.cn MSN:jingyi_sjy@yahoo.com.cn

约瑟夫问题. 设有n个人围坐在一个圆桌周围,先从第s个人开始报数,数到第m个人出列,然后 从出列的下一个人重新开始报数,书到第m个人又出列......如此重复,直到所有人出列为止.

输入n,s,m

输出出列顺序表.
我需要较为简短的,浅显易懂的程序,
最好能征集到各种不同的思路算法

若哪位仁兄能给我稀疏矩阵的程序 我将更加感激
若有稀疏矩阵的程序我就不需要您告诉我约瑟夫的程序便可将15悬赏分拱手相送
稀疏矩阵测试数据如下:
输入
3 4

1 0 3 0
0 0 0 0
0 2 3 0

4 2

0 2
0 0
1 0
0 2
输出
1 1 3
1 2 2
3 1 3

输入
4 3

2 0 0
0 0 0
3 1 2
0 0 1

3 5

0 2 0 1 0
0 0 2 0 0
1 0 3 4 0
输出
1 2 4
1 4 2
3 1 2
3 2 6
3 3 8
3 4 11
4 1 1
4 3 3
4 4 4

约瑟夫问题:
program p1(input,output);
const maxn=1000;
var
ay:array[1..1000]of boolean;
i,n,s,m,p,j:integer;
begin
readln(n,s,m);
for i:=1 to n do ay[i]:=true;
j:=0;i:=s;p:=1;
while(j<n)do
begin
if p=m then begin ay[i]:=false;j:=j+1;p:=0;write(i,' ') end;
if i=n then i:=1 else i:=i+1;
if ay[i] then p:=p+1
end;
end.