NK
(используется для отсева на уровне hr)
Нужно написать python скрипт, который запускается из командной строки, на вход принимает неформатированный текстовой файл, наполненный текстовыми строчками неограниченной длины. Каждая строчка – это один абзац. Задача скрипта:
1. Удалить повторяющиеся пробелы в строках и дублирующиеся переводы строк;
2. Напечатать выравненный по ширине текст шириной 80 символов (за счёт добавления пробелов между словами);
3. Отделять каждый абзац пустой строкой, используя только стандартные библиотеки кроме python кроме textwrap; format нельзя использовать;
4. Начало каждого абзаца должно начинаться с красной строки в четыре пробела;
5. При этом разбивать слова по слогам не требуется, а если получившаяся строка является окончанием абзаца, то её надо выравнивать по левому краю;
6. Слова длиной более 80 символов укорачивать до 79 символов, добавляя в их конце символ многоточия.
7. Важно, чтобы в конце любых строк кроме последней строки абзаца не оставалось "висячих" предлогов и союзов: и, или и других;
8. Если непоследняя строка абзаца состоит менее, чем из трёх слов, занявших менее 70 символов, её необходимо выровнять по левому краю (не расширять пробелами расстояние между словами)
Результат выложить на гитхаб.