Олимпиадный тренинг

Задача . A. Пунктуация


Дан текст, состоящий из маленьких латинских букв, пробелов и знаков препинания (точка, запятая, восклицательный и вопросительный знаки). Слово — это последовательность подряд идущих латинских букв.

Ваша задача — расставить пробелы по следующим правилам:

  • если между двумя словами нет знака препинания, тогда они должны разделяться ровно одним пробелом
  • перед каждым знаком препинания не должно быть пробелов
  • после каждого знака препинания должен быть ровно один пробел

Гарантируется, что между двумя знаками препинания содержится хотя бы одно слово. Текст начинается и заканчивается латинской буквой.

Входные данные

Входные данные состоят из единственной непустой строки — текста, длиной не более 10000 символов.

Выходные данные

Выведите отформатированный в соответствии с правилами текст. В этой задаче необходимо крайне точно следовать правилам вывода, например, наличие лишнего пробела в конце строки вывода является ошибкой. Обратите внимание, что заключительный перевод строки при проверке правильности ответа значения не имеет. Можете выводить его, а можете не выводить.


Примеры
Входные данныеВыходные данные
1 galileo galilei was an italian physicist ,mathematician,astronomer
galileo galilei was an italian physicist, mathematician, astronomer
2 galileo was born in pisa
galileo was born in pisa

time 2000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя