#6828. 密钥重组
密钥重组
密钥重组
题目描述
某安全系统中保存了 n 个不同的数字标记。
系统需要将这些数字标记重新排列,生成若干个长度为 n 的密钥序列。
一个合法的密钥序列需要满足:
- 每个数字标记都必须出现;
- 每个数字标记只能出现一次;
- 数字标记出现的位置不同,则认为是不同的密钥序列。
请你编写程序,计算系统一共可以生成多少个不同的合法密钥序列。
注意:你只需要输出密钥序列的数量,不需要输出具体的密钥序列。
输入格式
第一行输入一个整数 n,表示数字标记的数量。
第二行输入 n 个互不相同的整数,表示这些数字标记:
a1 a2 ... an
输出格式
输出一个整数,表示可以生成的不同合法密钥序列数量。
数据范围
1 ≤ n ≤ 10
1 ≤ ai ≤ 10^9
保证所有 ai 互不相同。
样例输入 1
3
4 7 9
样例输出 1
6
样例解释
使用数字标记 4、7、9 可以组成以下密钥序列:
4 7 9
4 9 7
7 4 9
7 9 4
9 4 7
9 7 4
因此共有 6 个不同的合法密钥序列。
样例输入 2
4
15 3 28 10
样例输出 2
24
相关
在以下作业中: