#721. 最小值
最小值
题目描述
素数是指大于 的自然数,除了 和它本身外不能被其他自然数整除。例如 是素数; 是合数。 和 既不是素数也不是合数。
小 想知道在只允许使用若干给定 个位数字(可重复使用)的情况下,能构成的最小素数是多少。
- 允许的数字集合给出后,可以任意组成由这些数字构成的正整数(首位不能为多余的前导零,除非数字本身就是 )。
- 不需要把集合中的每个数字都使用到,使用集合中的任意一个或多个数字即可组成候选数,例如只允许 ,最小的素数就是 (而不是 )。
- 若不存在任何由这些数字构成的素数,则输出 。
举例:
- 只允许数字 ,最小素数是 。
- 只允许数字 ,最小素数是 。
- 允许数字 ,最小素数是 。
- 允许数字 ,最小素数是 。
输入格式
共两行:
- 第一行:一个正整数 ,表示可以使用的数字个数。
- 第二行: 个用空格分隔的个位数字(每个为 到 的整数),表示允许使用的数字集合。保证这些数字两两互不相同。
输出格式
输出一行:
- 若存在由给定数字构成的素数,输出其中的最小素数(十进制表示)。
- 若不存在,输出
-1。
输入样例 1
2
3 5
输出样例 1
3
输入样例 2
1
1
输出样例 2
11
输入样例 3
3
8 0 9
输出样例 3
89
输入样例 4
4
2 3 4 5
输出样例 4
2
说明
数据范围
- 对于所有测试数据,,且 保证 个数字互不相同。