Предложение
(Время: 1 сек. Память: 32 Мб Сложность: 23%)
В предложении необходимо найти самое короткое и самое длинное слово.
Входные данные
В первой строке входного файла INPUT.TXT содержится предложение, состоящее из слов, разделенных пробелами. Каждое слово – это последовательность букв английского алфавита. Слова могут отделяться друг от друга одним или несколькими пробелами. Также один или несколько пробелов могут быть как в начале, так и в конце предложения. Гарантируется, что в предложении присутствует хотя бы одно слово. Длина предложения может быть от 1 до 106 символов.
Выходные данные
В первой строке выходного файла OUTPUT.TXT выведите слово из заданного предложения, состоящее из наименьшего количества букв. Если таких слов несколько, выведите лексикографически наибольшее из них. Во второй строке следует вывести слово, состоящее из наибольшего числа букв. Если таких слов несколько, выведите лексикографически наименьшее из них.
Примеры
№ | INPUT.TXT | OUTPUT.TXT |
1 | one two | two one |
2 | the pen is mightier than the sword | is
mightier |
3 | No Man IS an IsLand | an IsLand |
4 | ab Ab AB aB | ab AB |
Пояснение
Чтобы лексикографически сравнить слова одинаковой длины, нужно найти и отбросить максимальные совпадающие начала слов, после чего сравнить первые из оставшихся букв. Меньшим будет слово, у которого эта буква встречается раньше в алфавите. При этом любая строчная (маленькая) буква считается лексикографически больше любой заглавной (большой) буквы.
Система оценивания
Решения, работающие только для предложений, состоящих из слов одинаковой длины и не содержащих «лишних» пробелов, будут оцениваться в 60 баллов.
Для отправки решения задачи необходимо зарегистрироваться и авторизоваться!
|