CF1794A.Prefix and Suffix Array

传统题 时间 2000 ms 内存 256 MiB 3 尝试 2 已通过 1 标签

Prefix and Suffix Array

Marcos loves strings a lot, so he has a favorite string ss consisting of lowercase English letters. For this string, he wrote down all its non-empty prefixes and suffixes (except for ss) on a piece of paper in arbitrary order. You see all these strings and wonder if Marcos' favorite string is a palindrome or not. So, your task is to decide whether ss is a palindrome by just looking at the piece of paper.

A string aa is a prefix of a string bb if aa can be obtained from bb by deletion of several (possibly, zero or all) characters from the end.

A string aa is a suffix of a string bb if aa can be obtained from bb by deletion of several (possibly, zero or all) characters from the beginning.

A palindrome is a string that reads the same backward as forward, for example, strings "gg", "ioi", "abba", "icpci" are palindromes, but strings "codeforces", "abcd", "alt" are not.

Input

Each test consists of multiple test cases. The first line contains a single integer tt (1t1201 \le t \le 120) — the number of test cases. The description of test cases follows.

The first line of each test case contains a single integer nn (2n202\le n \le 20) — the length of the string ss.

The second line of each test case contains 2n22n-2 strings a1,a2,,a2n2a_1, a_2, \cdots, a_{2n-2} — all non-empty prefixes and suffixes of ss, not including itself, in arbitrary order.

It is guaranteed that these strings are all the non-empty prefixes and suffixes of some string consisting of lowercase English letters.

Output

For each test case, output "YES" if ss is a palindrome, and "NO" otherwise.

You can output the answer in any case (upper or lower). For example, the strings "yEs", "yes", "Yes", and "YES" will be recognized as positive responses.

Note

In the first test case, ss is "abcd". Its prefixes are "a", "ab" and "abc", and its suffixes are "d", "cd" and "bcd". As the string "abcd" is not a palindrome, the answer is NO.

In the second test case, ss is "ioi". Its prefixes are "i" and "io", and its suffixes are "i" and "oi". As the string "ioi" is a palindrome, the answer is YES.

In the third test case, ss is "gg" which is a palindrome.

In the fourth test case, ss is "alt" which is not a palindrome.

Samples

5
4
bcd cd a d abc ab
3
i io i oi
2
g g
3
t al lt a
4
bba a ab a abb ba
NO
YES
YES
NO
YES

在线编程 IDE

建议全屏模式获得最佳体验