Ctrl K

Один обмен до равного разнообразия

Средняя
Даны две непустые строки left и right из строчных латинских букв. Нужно сделать ровно один обмен: выбрать одну позицию в left, одну позицию в right и поменять стоящие там буквы. Верните True, если после такого обмена число *различных* букв в left может сравняться с числом различных букв в right, и False иначе.
Пример 1
left="pq", right="r" → False

Как ни меняй, в left останутся две разные буквы, а в right одна.

Пример 2
left="mmno", right="mp" → True

Отдаём из left одну m, забираем p: получаем "mnop" (4 буквы) и "mm" (1 буква) — не то. А если отдать n за m: "mmmo" (2) и "np" (2) — поровну.

Пример 3
left="ab", right="ab" → True

Меняем a на a — строки не меняются, в обеих по 2 разные буквы. Обмен обязателен, но он может быть и таким.

Ограничения
  • 1 ≤ len(left), len(right) ≤ 10⁵
  • Строки состоят только из строчных латинских букв
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиПодсказка к угадыванию кода СредняяСимволы, сгруппированные по частоте СредняяСамые частые запросы СредняяБез одинаковых соседей СредняяСводка заходов по доменам Средняя
загружаем Python…
Вход
left="pq", right="r"
Ожидается
False

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 122 теста на сервере, включая скрытые.