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

Задача . F. Приравнивание двух строк


Задано две строки \(s\) и \(t\), обе длины \(n\) и обе состоят из строчных букв латинского алфавита.

За один ход вы можете выбрать любую длину \(len\) от \(1\) до \(n\) и выполнить следующую операцию:

  • Выбрать любую непрерывную подстроку строки \(s\) длины \(len\) и перевернуть ее;
  • в тот же момент выбрать любую непрерывную подстроку строки \(t\) длины \(len\) и также перевернуть ее.

Заметьте, что в течение одного хода вы переворачиваете ровно одну подстроку строки \(s\) и ровно одну подстроку строки \(t\).

Также заметьте, что границы подстрок, которые вы переворачиваете в \(s\) и в \(t\), могут быть различны, единственное ограничение — вы должны переворачивать подстроки одинаковых длин. Например, если \(len=3\) и \(n=5\), то вы можете перевернуть \(s[1 \dots 3]\) и \(t[3 \dots 5]\), \(s[2 \dots 4]\) и \(t[2 \dots 4]\), но не \(s[1 \dots 3]\) и \(t[1 \dots 2]\).

Ваша задача — сказать, можно ли сделать строки \(s\) и \(t\) одинаковыми после какой-то (возможно, пустой) последовательности ходов.

Вам необходимо ответить на \(q\) независимых наборов входных данных.

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

Первая строка входных данных содержит одно целое число \(q\) (\(1 \le q \le 10^4\)) — количество наборов входных данных. Затем следуют \(q\) наборов входных данных.

Первая строка набора входных данных содержит одно целое число \(n\) (\(1 \le n \le 2 \cdot 10^5\)) — длину \(s\) и \(t\).

Вторая строка набора входных данных содержит одну строку \(s\), состоящую из \(n\) строчных букв латинского алфавита.

Третья строка набора входных данных содержит одну строку \(t\), состоящую из \(n\) строчных букв латинского алфавита.

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

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

Для каждого набора входных данных выведите ответ на него — «YES» (без кавычек), если возможно сделать строки \(s\) и \(t\) равными после какой-то (возможно, пустой) последовательности ходов и «NO» иначе.


Примеры
Входные данныеВыходные данные
1 4
4
abcd
abdc
5
ababa
baaba
4
asdf
asdg
4
abcd
badc
NO
YES
NO
YES

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

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