# Hackerrank - Permuting Two Arrays Solution

Consider two -element arrays of integers, and . You want to permute them into some and such that the relation holds for all where . For example, if , , and , a valid satisfying our relation would be and , and .

You are given queries consisting of , , and . For each query, print `YES`

on a new line if some permutation , satisfying the relation above exists. Otherwise, print `NO`

.

**Function Description**

Complete the *twoArrays* function in the editor below. It should return a string, either `YES`

or `NO`

.

twoArrays has the following parameter(s):

*k*: an integer*A*: an array of integers*B*: an array of integers

**Input Format**

The first line contains an integer , the number of queries.

The next sets of lines are as follows:

- The first line contains two space-separated integers and , the size of both arrays and , and the relation variable.
- The second line contains space-separated integers .
- The third line contains space-separated integers .

**Constraints**

**Output Format**

For each query, print `YES`

on a new line if valid permutations exist. Otherwise, print `NO`

.

**Sample Input**

```
2
3 10
2 1 3
7 8 9
4 5
1 2 2 1
3 3 3 4
```

**Sample Output**

```
YES
NO
```

**Explanation**

We perform the following two queries:

, , and . We permute these into and so that the following statements are true:

- Thus, we print
`YES`

on a new line.

- , , and . To permute and into a valid and , we would need at least three numbers in to be greater than ; as this is not the case, we print
`NO`

on a new line.

### Solution in Python

```
def twoArrays(k, A, B):
A = sorted(A)
B = sorted(B, reverse=True)
for x,y in zip(A,B):
if x+y<k:
return "NO"
return "YES"
for _ in range(int(input())):
n, k = map(int, input().split())
A = list(map(int, input().split()))
B = list(map(int, input().split()))
print(twoArrays(k, A, B))
```