Problem C: 包子叔叔

Problem C: 包子叔叔

Time Limit: 1.000 Sec  Memory Limit: 256 MB
Submit: 7  Solved: 3
[Submit] [Status] [Web Board] [Creator:]

Description

包子叔叔非常喜欢吃包子,同时他也十分擅长做包子。于是他开了一家早餐包子铺,包子叔叔一共有
N 种蒸笼,其中第 i 种蒸笼恰好能够放 a_i 个包子。每种蒸笼的数量很多,可以看成是无限多个。
每当有顾客想买 X 个包子时,包子叔叔就会挑选若干个蒸笼,使得蒸出来的包子恰好有 X 个。
比如一共有 3 种蒸笼,分别能放 3、4 和 5 个包子。当顾客想买 11 个包子时,包子叔叔就会选 2 笼 3 个的再
加 1 笼 5 个的(也可能选出 1 笼 3 个的再加 2 笼 4 个的)。
当然有时包子叔叔无论如何也凑不出顾客想买的数量。
比如一共有 3 种蒸笼,分别能放 4、5 和 6 个包子。而顾客想买 7 个包子时,包子叔叔就凑不出来了。
现在包子叔叔想要知道一共有多少种数目是凑不出来的。

Input

第一行输入一个整数 N,表示蒸笼的数量。
第二行输入 N 个整数,a_i 表示第 i 个蒸笼能够蒸的包子数。

Output

输出一个数表示答案。
若凑不出的包子数有无限多个,输出-1。

Sample Input

2
4 5

Sample Output

6

HINT

【样例解释】
凑不出的数目有:1,2,3,6,7,11。
【数据范围】
30%的数据保证,1<=N<=2,1<=a_i<=100
100%的数据保证,1<=N<=100,1<=a_i<=100

[Submit][Status]