Опрос и его результатыРадиокомпания провела опрос своих слушателей, которые должны назвать животное, связанное, на их взгляд, с их страной. На вход программы в первой строке подается количество опрошенных N. В каждой из последующих N строк записано название животного, которое предпочел данный опрошенный, в виде текстовой строки. Длина строки не превосходит 50 символов. Название может содержать любые символы: буквы, цифры, пробелы и т.п. Пример входных данных:
Программа должна вывести список всех животных, встреччающихся в исходном списке, в порядке убывания числа голосов, отданных за это животное. При этом название каждого животного должно быть выведено ровно один раз, вне зависимости от того, сколько голосов было отдано за данное животное. Рядом с названием животного надо вывести число голосов, отданных за него. Пример выходных данных для приведенного примера входных данных:
При этом следует учитывать, что количество голосов в исходном списке может быть велико (свыше 1000), а количесчтво различных животных в этом списке не превосходит 10. Решение В условии есть явный намек, массивы в n элементов не требуются слишком уж велик объем входных данных. Необходимы два массива в 10 элементов: строковый (anim) для хранения названий животных и целочисленный q (для хранения количества голосов, отданных за данное животное). При вводе каждого нового названия животного при опросе возможны такие варианты: животное не встречается в массиве (anim), тогда это животное
записывается в этот массив, а в массив q записывается 1. В другом случае название животного есть в массиве (anim). Тогда в массиве q соответствующий
элемент увеличивается на 1.
|