53 lines
2.7 KiB
Python
53 lines
2.7 KiB
Python
''' ****** Задание 3 из 20 *********
|
||
* В этой задаче вы выступите в роли разработчика новостного сайта.
|
||
|
||
Местная редакция заказала у вас систему для отображения заголовков. Чтобы лента была удобной, слишком длинные заголовки нужно сокращать и добавлять многоточие.
|
||
|
||
Напишите программу, которая сокращает заголовки до требуемой длины.
|
||
|
||
Если заголовок длиннее, он должен быть усечён и завершён многоточием ....
|
||
Если заголовок помещается в заданную длину — выводите его без изменений.
|
||
Формат ввода
|
||
Вводится натуральное число L — необходимая длина заголовка.
|
||
Вводится натуральное число N — количество заголовков, которые требуется сократить.
|
||
В каждой из последующих N строк записано по одному заголовку.
|
||
|
||
Формат вывода
|
||
Сокращённые заголовки.
|
||
|
||
Примечание
|
||
Многоточие учитывается при подсчёте длины заголовка.
|
||
|
||
|
||
Подсказка
|
||
Считайте желаемую длину заголовка (например в переменную length) и количество заголовков новостей (например в переменную count).
|
||
|
||
Организовав цикл, считайте очередной заголовок (например в переменную title) и обработайте его:
|
||
|
||
|
||
if len(title) <= length:
|
||
print(title)
|
||
else:
|
||
# Если заголовок длиннее необходимого, обрезаем его срезом и завершаем вывод многоточием
|
||
print(title[:length - 3], end='...\n')
|
||
Пример
|
||
Ввод
|
||
|
||
25
|
||
3
|
||
Начался саммит по глобальному потеплению
|
||
Завтра Новый год!
|
||
Python и Java конкурируют за звание самого популярного языка программирования
|
||
Вывод
|
||
|
||
Начался саммит по глоб...
|
||
Завтра Новый год!
|
||
Python и Java конкурир...
|
||
'''
|
||
|
||
|
||
if __name__ == "__main__"
|
||
length = int(input())
|
||
for _ in range(int(input())):
|
||
line = input()
|
||
print(line[:length - 3].ljust(length, ".") if len(line) > length else line) |