Ctrl K

Фраза на табло

Средняя
На табло lines строк, в каждой помещается width символов. На него снова и снова выводят одну и ту же фразу — список слов words: по порядку, а после последнего слова фраза начинается заново с первого. Правила вывода: - слово нельзя разрывать между строками — если оно не помещается в остаток строки, оно переносится на следующую; - соседние слова в одной строке разделены ровно одним пробелом; - порядок слов не меняется. Сколько раз фраза будет выведена целиком?
Пример 1
words=["sale", "today"], lines=3, width=10 → 3

Строки табло: «sale today», «sale today», «sale today» — фраза целиком прошла 3 раза.

Пример 2
words=["go", "north", "x"], lines=4, width=7 → 2

Строки: «go», «north x», «go», «north x» (слово north не влезает после go с пробелом: 2 + 1 + 5 = 8 > 7). Фраза прошла 2 раза.

Пример 3
words=["welcome"], lines=5, width=6 → 0

Слово длиннее строки, его не вывести ни разу.

Ограничения
  • 1 ≤ len(words) ≤ 100
  • 1 ≤ len(words[i]) ≤ 10, слова состоят из строчных латинских букв
  • 1 ≤ lines, width ≤ 2·10⁴
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиРазбиение на слова из словаря СредняяБитовые строки в пределах бюджета СредняяСлова, спрятанные в тексте СредняяСлово растёт по букве СредняяНитка бус без повторов Средняя
загружаем Python…
Вход
words=["sale", "today"], lines=3, width=10
Ожидается
3

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