Задача про количество пробелов

В чатике для начинающих программистов один человек выложил задачку.

Задача «Loneliest character». Напишите функцию loneliest(), которая принимает строку вида «a b  z   p c» и возвращает массив символов, у которых больше всего пробелов справа и слева.

Примеры:

'a b  c' => ['b']
'a bcs           d k' => ['d']
'    a b  sc     p     t   k'  => ['p']
'a  b  c  de'  => ['b', 'c']
'     a  b  c de        '  => ['b']
'abc' => ['a', 'b', 'c']

Примечание:

  • Начальные и конечные пробелы в строке не считаем
  • Строки содержат только уникальные символы от a до z;
  • Порядок символов в массиве не имеет значения.

Вот, как пытался решать задачу человек, который скинул её в чат.

Я сначала выписывал индексы букв из строки. Потом между этими индексами считал количество пробелов и записывал значение. Потом складывал два смежных значения и выписывал самое большое, потом запутался.
Пользователь чата

Я минут 20 ломал голову, думал уже бросит затею, но потихоньку родилась вот такая реализация. Она не идеальная (далеко), но с поставленной задачей справляется.

По ссылке можно посмотреть исходный код.

Поделиться
Отправить
Запинить
 34   4 мес   задачи
Популярное