x и y (так что строка равна x + y), по желанию меняют куски местами (получается y + x) и затем так же перетасовывают каждый кусок отдельно.
Даны строки start и goal одинаковой длины. Верните true, если при каком-то выборе разрезов и обменов из start получается goal, и false иначе.start="stone", goal="tones" → True
Режем "stone" на "s" и "tone" и меняем куски местами: "tone" + "s" = "tones". Дальше куски можно оставить как есть.
start="abcd", goal="bdac" → False
Первый разрез даёт "a"+"bcd", "ab"+"cd" или "abc"+"d". Чтобы получить "bdac", один из кусков должен состоять из тех же букв, что начало или конец "bdac" той же длины ("b", "bd", "bda" или "c", "ac", "dac"). Ни один вариант не подходит, поэтому ответ false.
start="z", goal="z" → True
start="stone", goal="tones"
True
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 100 тестов на сервере, включая скрытые.