left и right из строчных латинских букв, индексы с нуля.
Рассмотрим четвёрки индексов (i, j, a, b), где 0 ≤ i ≤ j < len(left) и 0 ≤ a ≤ b < len(right), такие что кусок left[i..j] совпадает с куском right[a..b] (оба конца включительно).
Среди всех таких четвёрок найдите наименьшее значение j − a — конец куска в left минус начало куска в right — и верните, сколько четвёрок его достигают. Если совпадающих кусков нет, верните 0.left="race", right="care" → 1
Лучший вариант — буква r: в left она на позиции 0, в right на позиции 2, разность 0 − 2 = −2. Меньше получить нельзя, и такая четвёрка одна.
left="ab", right="ab" → 2
Буква a даёт 0 − 0 = 0, буква b даёт 1 − 1 = 0. Длинный кусок «ab» даёт 1 − 0 = 1, это хуже. Минимум 0 достигается двумя четвёрками.
left="dog", right="cat" → 0
Общих букв нет — совпадающих кусков тоже.
left="race", right="care"
1
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 85 тестов на сервере, включая скрытые.