words. Каждому слову нужно подобрать сокращение по таким правилам.
Сокращение с префиксом длины p — это первые p букв слова, затем число пропущенных букв посередине и последняя буква. Например, у internal с p = 1 сокращение i6l, а с p = 3 — int4l.
Сначала у всех слов p = 1. Пока у нескольких слов сокращения совпадают, у каждого из этих слов p увеличивается на 1; так повторяется, пока все сокращения не станут разными. Если в итоге сокращение не короче самого слова, вместо него берётся слово целиком.
Верните массив итоговых сокращений в том же порядке, что и words.words=['apple', 'ample', 'angle', 'ankle'] → ['ap2e', 'am2e', 'angle', 'ankle']
У всех четырёх слов сокращение «a3e», поэтому первая часть растёт. При двух буквах «ap2e» и «am2e» уже уникальны, а «angle» и «ankle» различаются только третьей буквой: «ang1e» и «ank1e» не короче самих слов, поэтому они остаются как есть.
words=['moon', 'mean', 'star'] → ['moon', 'mean', 's2r']
«moon» и «mean» сталкиваются на «m2n», а «mo1n» и «me1n» уже не короче слов. «star» сокращается до «s2r».
words=['ok', 'yes'] → ['ok', 'yes']
Сокращения «o0k» и «y1s» не короче самих слов, поэтому слова остаются без изменений.
words.length ≤ 400words[i].length ≤ 400words[i] состоит только из строчных латинских буквwords различныwords=['apple', 'ample', 'angle', 'ankle']
['ap2e', 'am2e', 'angle', 'ankle']
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 77 тестов на сервере, включая скрытые.