Олимпиадный тренинг

Задача . C. Сопоставление массивов


Даны два массива \(a\) и \(b\) длины \(n\). Назовём красотой массивов \(a\) и \(b\) количество индексов \(i\) таких, что \(a_i > b_i\).

Вам также дано целое число \(x\). Определите, можно ли переставить элементы \(b\) так, чтобы красота массивов стала равна \(x\). Если это возможно, то выведите любой подходящий массив, который можно получить из \(b\).

Входные данные

Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно целое число \(t\) (\(1 \le t \le 10^4\)) — количество наборов входных данных. Далее следует описание наборов входных данных.

Первая строка каждого набора входных данных содержит два целых числа \(n\) и \(x\) (\(1 \le n \le 2\cdot 10^5\), \(0 \le x \le n\)) — длину массивов \(a\) и \(b\) и желаемую красоту массивов.

Вторая строка каждого набора входных данных содержит \(n\) целых чисел \(a_1, a_2, \ldots, a_n\) (\(1 \le a_i \le 2n\)) — элементы массива \(a\).

Третья строка каждого набора входных данных содержит \(n\) целых чисел \(b_1, b_2, \ldots, b_n\) (\(1 \le b_i \le 2n\)) — элементы массива \(b\).

Гарантируется, что сумма \(n\) по всем наборам входных данных не превышает \(2\cdot 10^5\).

Выходные данные

Для каждого набора входных данных выведите «NO», если невозможно переставить \(b\) так, чтобы красота массивов стала равна \(x\).

В противном случае выведите «YES». Затем, в следующей строке выведите \(n\) целых чисел, которые представляют собой перестановку массива \(b\).

Если существует несколько решений, выведите любое из них.

Вы можете выводить каждую букву в любом регистре (строчную или заглавную). Например, строки «yEs», «yes», «Yes» и «YES» будут приняты как положительный ответ.

Примечание

В наборах входных данных 1 и 2 красота массивов может быть равна только \(0\), так как \(a_1 = 1 \le 2 = b_1\).

В наборах входных данных 3, 4, 5 и 6 возможны следующие красоты массивов: \(x = 1\) и \(x = 2\). В частности, если \(b\) сделать равным \([2, 4, 1]\), то \(a_3 = 3 > 1 = b_3\), поэтому красота массивов равна \(1\). Если же \(b\) не менять, то \(a_2 = 4 > b_2 = 1\) и \(a_3 = 3 > 2 = b_3\), так что красота массивов равна \(2\).


Примеры
Входные данныеВыходные данные
1 7
1 0
1
2
1 1
1
2
3 0
2 4 3
4 1 2
3 1
2 4 3
4 1 2
3 2
2 4 3
4 1 2
3 3
2 4 3
4 1 2
5 2
6 4 5 6 2
9 7 9 1 1
YES
2
NO
NO
YES
2 4 1
YES
4 1 2
NO
YES
1 9 9 7 1

time 2000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w643
Комментарий учителя