测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A15377. Number Replacement

编程题 普及/提高-

题目描述

An integer array $a_1, a_2, \ldots, a_n$ is being transformed into an array of lowercase English letters using the following prodecure:

While there is at least one number in the array:

- Choose any number $x$ from the array $a$ , and any letter of the English alphabet $y$ .
- Replace all occurrences of number $x$ with the letter $y$ .

For example, if we initially had an array $a = [2, 3, 2, 4, 1]$ , then we could transform it the following way:

- Choose the number $2$ and the letter c. After that $a = [c, 3, c, 4, 1]$ .
- Choose the number $3$ and the letter a. After that $a = [c, a, c, 4, 1]$ .
- Choose the number $4$ and the letter t. After that $a = [c, a, c, t, 1]$ .
- Choose the number $1$ and the letter a. After that $a = [c, a, c, t, a]$ .

After the transformation all letters are united into a string, in our example we get the string "cacta".

Having the array $a$ and the string $s$ determine if the string $s$ could be got from the array $a$ after the described transformation?

输入格式

The first line contains a single integer $t$ $(1 \leq t \leq 10^3$ ) — the number of test cases.

Then the description of the test cases follows.

The first line of each test case contains a single integer $n$ ( $1 \leq n \leq 50$ ) — the length of the array $a$ and the string $s$ .

The second line of each test case contains exactly $n$ integers: $a_1, a_2, \ldots, a_n$ ( $1 \leq a_i \leq 50$ ) — the elements of the array $a$ .

The third line of each test case contains a string $s$ of length $n$ , consisting of lowercase English letters.

输出格式

For each test case, output "YES", if we can get the string $s$ from the array $a$ , and "NO" otherwise. You can output each letter in any case.

输入输出样例

输入 #1
7
5
2 3 2 4 1
cacta
1
50
a
2
11 22
ab
4
1 2 2 1
aaab
5
1 2 3 2 1
aaaaa
6
1 10 2 9 3 8
azzfdb
7
1 2 3 4 1 1 2
abababb
输出 #1
YES
YES
YES
NO
YES
YES
NO

说明/提示

The first test case corresponds to the sample described in the statement.

In the second test case we can choose the number $50$ and the letter a.

In the third test case we can choose the number $11$ and the letter a, after that $a = [a, 22]$ . Then we choose the number $22$ and the letter b and get $a = [a, b]$ .

In the fifth test case we can change all numbers one by one to the letter a.
上一题 去做题 下一题