选择游戏
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

黑板上有 n 个数字。

小灰灰和小蓝依次操作(小灰灰先操作),每次操作他们会选择一个质数,将其擦去,然后将其减一后的值再写在黑板上。当轮到某人操作,而其无法操作时则宣布其输掉比赛,另一人获胜。

为了获胜,小灰灰决定先擦去黑板上的一些数字,请你帮小灰灰计算若要使得其获胜,其最少需要擦去多少个数字。

输入描述:

第一行一个整数 T 代表案例总数。

接下来每两行代表一个测试案例:

    第一行一个整数 n 代表黑板上的数字总数。
    第二行 n 个空格分隔的整数代表黑板上初始的数字。

保证:

所有输入的数字都是正整数且不超过 10^{5}

单个测试点所有案例中 n 的和不超过 2\times 10^5

输出描述:

T 行,第 i 行一个整数代表第 i 个案例的答案,特别的,若小灰灰无论如何都无法获胜请输出 -1
示例1

输入

复制
3
5
7 9 8 7 2
1
8
2
5 11

输出

复制
0
-1
1