测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A71605. 最小值

编程题 基础

题目描述

素数是指一个大于 1 的自然数,除了 1 和它本身外,不能被其他自然数整除,换句话说就是该数除了 1 和它本身以外不再有其他的因数。比如 2,3,5,7,11,13……都是素数,而 4,6,8,9,10……都是合数(有 3 个以上因数)。特别地,01 既不是素数,也不是合数。

小Y想知道最小的素数,那当然是 2 。不过他加上了一些限制,就是只通过某些数字构成的素数最小是多少?比如只通过 3 构成的最小的素数是 3,只通过 1 构成的最小的素数是 11,只通过 89 构成的最小的素数是 89 等等。另外需要特别指出的是:给出的数字无须全部用到,比如只通过 35 构成的最小的素数是 3,而不是 53

输入格式

第一行一个正整数 n,表示可以使用的数字的个数。

第二行 n 个个位数字,表示可以使用哪些数字。

输出格式

一行一个素数表示构成的素数最小是多少,若是无法通过给出的数字构成素数,则输出 -1

输入输出样例

输入 #1
2
3 5
输出 #1
3
输入 #2
1
1
输出 #2
11
输入 #3
3
8 0 9
输出 #3
89

说明/提示

【数据范围】

本题共有 10 个测试点,每个测试点 9

对于全部测试点:n \le 10,保证可以使用的数字互不相同

对于测试点1-3 :n=1

对于测试点4-7 :n=2