一道pascal题目排列(permutation)【源程序名】permutation.(pas/cpp)【问题描述】有n个人(1≤n≤9),每个人的编号1,2,...,n;请选出r个人参加一个活动,并排成一队,请输出所有可能.结果按照字典排序.

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/09 03:44:46
一道pascal题目排列(permutation)【源程序名】permutation.(pas/cpp)【问题描述】有n个人(1≤n≤9),每个人的编号1,2,...,n;请选出r个人参加一个活动,并排成一队,请输出所有可能.结果按照字典排序.

一道pascal题目排列(permutation)【源程序名】permutation.(pas/cpp)【问题描述】有n个人(1≤n≤9),每个人的编号1,2,...,n;请选出r个人参加一个活动,并排成一队,请输出所有可能.结果按照字典排序.
一道pascal题目
排列(permutation)
【源程序名】permutation.(pas/cpp)
【问题描述】有n个人(1≤n≤9),每个人的编号1,2,...,n;请选出r个人参加一个活动,并排成一队,请输出所有可能.结果按照字典排序.
【输入数据】输入数据两行,第一行包含一个整数n(1≤n≤9),表示共有n个人,第二行包含一个整数r(1≤r≤n),表示共有r个人参加活动.
【输出数据】输出数据每一种排列占一行,为这r个人的编号,编号之间有一个空格,排列按照字典顺序输出.
【测试样例】
输入
3
3
输出
1 2 3
1 3 2
2 1 3
2 3 1
3 1 2
3 2 1

一道pascal题目排列(permutation)【源程序名】permutation.(pas/cpp)【问题描述】有n个人(1≤n≤9),每个人的编号1,2,...,n;请选出r个人参加一个活动,并排成一队,请输出所有可能.结果按照字典排序.
很简单,用深度优先搜索,我没做优化,当n=9,r=9时,需要一定时间.
var
n,r,k:byte;
f:array [1..9] of boolean;
a:array [1..9] of byte;
procedure permutation(i:byte);
var j:byte;
begin
if i=r+1 then
begin
for k:=1 to r-1 do
write(a[k],' ');
writeln(a[r]);
exit;
end;
for j:=1 to n do
if f[j] then
begin
f[j]:=false;
a[i]:=j;
permutation(i+1);
f[j]:=true;
end;
end;
begin
fillchar(f,sizeof(f),true);
readln(n);
readln(r);
permutation(1);
end.

一道poj上的题目求poj2253 的pascal程序 一道JAVA题目,5个数,从小到大排列, 做一道PASCAL题目输出2——n之间的所有素数(质数). 一道编程题目pascal:用辗转相除法求两数的最大公约数. Noip提高组pascal题目 有重复元素的排列问题pascal 一道pascal题目排列(permutation)【源程序名】permutation.(pas/cpp)【问题描述】有n个人(1≤n≤9),每个人的编号1,2,...,n;请选出r个人参加一个活动,并排成一队,请输出所有可能.结果按照字典排序. 一道pascal题目啊两数组最短距离【short.pas】【问题描述】已知元素从小到大排列的两个数组,请写出一个程序算出两个数组彼此之间差的绝对值中最小的一个,这叫做数组的距离.【输入文件】s 有一道编程题目(pascal),求高手讲解源代码.选数排列提交文件:pick.pas/.cpp输入文件:pick.in输出文件:pick.out给出N个数,我们需要选择其中的R x C个数,把它们填入一个R x C的矩阵(R行C列)中. 一道Free Pascal的题目求100~1000之间能被7整除的数,每行输出10个. 急求TURBO PASCAL 急求关于TURBO PASCAL 一道要关于FOR的,另外两道一道是过程的,一道是函数的,题目可以自己编,但是要与化学有关的, 教我一道turbo pascal题目题目是从键盘输入一个整数X(X 不超过 10000),若X的各位数字之和为7的倍数,则打印YES',否则中打印NO用turbo pascal格式回答 PASCAL 排列数据每一行的数据项数 1 用pascal编写的一道题目.找出各位上数字之和为8,并且是素数的所有二位正整数之和,并输出这些数及其和.. 求一道简单的pascal题目马戏团有鸟和大象,它们共有 36 个头,100只脚.问有多少只鸟和大象. 一道简单的pascal题目输入两个大写英文字母,按英文字母顺序输出这两个字母之间的所有字母.如输入HD输出DEFGH 有关一道排列词语的题目将除夕、元宵、冬至、初一按时间的先后顺序排列. 一道排列题