- 全排列
- 2009-06-09 22:10:40 @
program qpl69;
var
m,n,s:integer;
aa,bb:array[1..50] of integer;
procedure try(a:integer);
var
i:integer;
begin
if a>n then
begin
s:=s+1;
if s=m then
begin
for i:=1 to n do
write(aa[i],' ');
halt;
end;
end
else
begin
for i:=1 to n do
if a=1 then
begin
aa[a]:=i;
bb[i]:=1;
try(a+1);
bb[i]:=0;
end
else
begin
if bb[i]=0 then
begin
aa[a]:=i;
bb[i]:=1;
try(a+1);
bb[i]:=0;
end;
end;
end;
end;
begin
read(n,m);
s:=0;
try(1);
end.
请大家看看什么问题
在测试时没超时,答案错了。
因为不知道测试数据,所以不知道怎么改。
大侠们帮下啊~~
0 条评论
目前还没有评论...