“23点”是一种简单的儿童纸牌游戏。顾名思义,它是赌场和游戏网站中最流行的游戏——“21点”的一种变体。
该游戏使用一副 52 张牌,共有四种花色,每种花色 13 张牌(A、2、3、4、5、6、7、8、9、10、J、Q、K)。花色无关紧要。花牌(J、Q、K)的点数为 10 点,数字牌的点数等于其面值(例如,4 点牌计为 4 分),A 计为 1 分。
点数最多且不超过 23 点的玩家获胜。如果玩家的点数超过 23 点,则称该玩家“爆牌”(busts)。
游戏规则很简单:每局开始时,牌堆会被洗乱,牌被放置成一叠,每位玩家从牌堆中抽取两张牌。所有牌均正面朝上发出(所有玩家都能看到所有人的牌)。接下来的步骤称为“回合”,只要还有活跃玩家,就会重复进行:从牌堆中取出一张牌并正面朝上放在桌面上。这张牌称为“公共牌”,计入所有玩家的点数。如果玩家爆牌,他将离开游戏。获胜者是在某一回合中点数总和达到 23 点的玩家(考虑其两张起始牌加上所有公共牌),或者是在回合结束时唯一存活的活跃玩家。注意,可能存在多名获胜者(他们的牌点数总和均为 23),也可能在一局比赛中没有获胜者。
John 和 Mary 正在玩“23点”。两人是游戏中仅有的玩家,他们都没有爆牌,且点数都没有达到 23 点。此外,玩家的点数使得下一张公共牌可能会导致游戏结束。
给定 John 和 Mary 的初始牌以及已有的公共牌,确定下一回合中为了让 Mary 赢得游戏,从牌堆中取出的牌的最小可能点数。
输入格式
输入的第一行包含一个整数 $N$ ($1 \le N \le 8$),表示已经进行的回合数。每张牌由一个整数 $I$ ($1 \le I \le 13$) 描述。注意,花牌(J、Q、K)在输入中分别由 11、12 和 13 表示,这并非它们代表的点数。第二行包含两个整数,描述 John 的两张初始牌。第三行包含两个整数,描述 Mary 的两张初始牌。第四行(最后一行)包含 $N$ 个整数,按从牌堆中取出的顺序描述公共牌。
输出格式
程序应输出一行,包含一个整数,表示为了让 Mary 在下一回合赢得游戏,必须从牌堆中取出的牌的最小点数;如果 Mary 无法在下一回合获胜,则输出 -1。
样例
样例输入 1
1 10 5 9 10 1
样例输出 1
3
样例输入 2
1 10 5 8 7 2
样例输出 2
6
样例输入 3
1 9 10 10 5 1
样例输出 3
4
样例输入 4
2 8 4 4 1 4 4
样例输出 4
5
样例输入 5
8 2 1 1 1 1 2 2 2 3 3 3 3
样例输出 5
-1