top и bottom одинаковой длины из букв x и y. Нужно сделать их одинаковыми.
За один ход можно взять любой символ из top и любой символ из bottom и поменять их местами: top[i] ↔ bottom[j], где i и j могут быть разными. Менять местами два символа внутри одной строки нельзя.
Верните наименьшее число ходов, после которых строки совпадут, или -1, если это невозможно.top="xy", bottom="yx" → 2
Два несовпадения разного вида. Сначала меняем top[0] и bottom[0]: строки становятся "yy" и "xx". Затем меняем top[0] и bottom[1] — обе строки равны "xy". Итого два обмена.
top="xxyx", bottom="yyyx" → 1
Несовпадают позиции 0 и 1, обе вида x над y. Один обмен top[0] и bottom[1] делает обе строки равными "yxyx".
top="xy", bottom="xx" → -1
Всего букв x три — нечётное число, поровну между строками их не разделить.
x и ytop="xy", bottom="yx"
2
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 106 тестов на сервере, включая скрытые.