#P1048. 麻克

麻克

题目描述

小圈在和自己玩地斗主。

她现在有 nn 张手牌。第 ii 张手牌的点数是 aia_i。在这个问题中,我们不关心手牌的花色,点数是 $\{\texttt{2},\texttt{3},\texttt{4},\texttt{5},\texttt{6},\texttt{7},\texttt{8},\texttt{9},\texttt{10},\texttt{J},\texttt{Q},\texttt{K},\texttt{A}\}$ 之一。每个点数的手牌最多出现四张。没有大小王。

小圈想把自己的手牌分成若干组三带一。一组三带一满足如下要求:

  • 44 张牌。
  • 33 张牌的点数相同,余下的一张牌与其它三张牌点数不同

例如,手牌组 (4,4,4,A)(\texttt{4},\texttt{4},\texttt{4},\texttt{A}) 一组三带一,而 (4,4,4,4)(\texttt{4},\texttt{4},\texttt{4},\texttt{4})、$(\texttt{A},\texttt{A},\texttt{4},\texttt{5}, \texttt{A}, \texttt{4})$ 均三带一

给定小圈的手牌,小圈想问你她手上的牌能不能满足:存在一种划分,可以把这些手牌划分成若干组三带一,每张手牌都恰好属于一组三带一。

输入格式

本题单个测试点内有多组测试数据,第一行是一个整数 TT,表示数据组数。对每组数据,按如下格式输入:

第一行是一个整数 nn,表示手牌数量。
第二行有 nn 个用单个空格隔开的字符串,第 ii 个字符串表示第 ii 张手牌的点数 sis_i

输出格式

对每组数据,如果存在符合要求的划分,输出一行一个字符串 Yes\texttt{Yes},否则输出一行一个字符串 No\texttt{No}

输入输出样例

样例输入 1

6
4
4 4 4 10
4
A A A Q
4
7 8 9 A
6
A A 4 5 A 4
6
A 9 A 9 8 10
8
A A A A 2 2 2 2

样例输出 1

Yes
Yes
No
No
No
Yes

样例 1 解释

对第六组数据,可以划分为 (A,A,A,2)(A,A,A,2)(2,2,2,A)(2,2,2,A) 两个手牌组。

样例 2

见选手目录下的 pojong/pojong2.inpojong/pojong2.ans

数据规模与约定

本题共 1010 个测试点,每个测试点 1010 分。

测试点编号 nn 特殊约定
11 =4=4 AB
22
33 =8=8
44 =12=12 AB
55
66 52\leq 52 AB
77 A
88 B
9,109,10

特殊约定中,AA 表示不存在一个点数,使得其在该测试点的某组数据的输入中出现四次,BB 表示不存在一个点数,使得其在该测试点的某组数据的输入中出现恰好两次。

对全部的测试数据,保证 1T30001 \leq T \leq 30001n521 \leq n \leq 52,$s_i \in \{\texttt{2},\texttt{3},\texttt{4},\texttt{5},\texttt{6},\texttt{7},\texttt{8},\texttt{9},\texttt{10},\texttt{J},\texttt{Q},\texttt{K},\texttt{A}\}$。