CF1584C Two Arrays
Description
You are given two arrays of integers $ a_1, a_2, \ldots, a_n $ and $ b_1, b_2, \ldots, b_n $ .
Let's define a transformation of the array $ a $ :
1. Choose any non-negative integer $ k $ such that $ 0 \le k \le n $ .
2. Choose $ k $ distinct array indices $ 1 \le i_1 < i_2 < \ldots < i_k \le n $ .
3. Add $ 1 $ to each of $ a_{i_1}, a_{i_2}, \ldots, a_{i_k} $ , all other elements of array $ a $ remain unchanged.
4. Permute the elements of array $ a $ in any order.
Is it possible to perform some transformation of the array $ a $ exactly once, so that the resulting array is equal to $ b $ ?
Input Format
The first line contains a single integer $ t $ ( $ 1 \le t \le 100 $ ) — the number of test cases. Descriptions of test cases follow.
The first line of each test case contains a single integer $ n $ ( $ 1 \le n \le 100 $ ) — the size of arrays $ a $ and $ b $ .
The second line of each test case contains $ n $ integers $ a_1, a_2, \ldots, a_n $ ( $ -100 \le a_i \le 100 $ ).
The third line of each test case contains $ n $ integers $ b_1, b_2, \ldots, b_n $ ( $ -100 \le b_i \le 100 $ ).
Output Format
For each test case, print "YES" (without quotes) if it is possible to perform a transformation of the array $ a $ , so that the resulting array is equal to $ b $ . Print "NO" (without quotes) otherwise.
You can print each letter in any case (upper or lower).
Explanation/Hint
In the first test case, we can make the following transformation:
- Choose $ k = 2 $ .
- Choose $ i_1 = 1 $ , $ i_2 = 2 $ .
- Add $ 1 $ to $ a_1 $ and $ a_2 $ . The resulting array is $ [0, 2, 0] $ .
- Swap the elements on the second and third positions.
In the second test case there is no suitable transformation.
In the third test case we choose $ k = 0 $ and do not change the order of elements.