Задача №112512. Словарь для файла

Напишите программу, которая строит алфавитно-частотный словарь для файла input.txt , в котором записаны слова, состоящие только из строчных букв латинского алфавита. Слова нужно отсортировать в порядке убывания частоты (сначала слова, которые встретились чаще всего). Слова с одинаковой частотой должны располагаться в алфавитном порядке.

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

Входной файл содержит неизвестное количество строк, в каждой из которых записаны слова, состоящее только из строчных букв латинского алфавита. В одной строке могут быть записаны несколько слов, разделенных произвольным количеством пробелов. Последняя строка файла – пустая. Пробелы могут быть также в начале и в конце строк.

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

Программа должна вывести в файл output.txt все различные слова, которые встретились в исходном файле, по одному слову в строке. После каждого слова через пробел записывается количество таких слов в файле. Слова должны быть отсортированы по убыванию частоты (сначала слова, которые встретились чаще всего).

Примеры
Входные данные
  i was he
was she   
  he
Выходные данные
he 2
was 2
i 1
she 1
Сдать: для сдачи задач необходимо войти в систему