Форум » Обработка числовых последовательностей » Сортировка структур » Ответить

Сортировка структур

PavelG: Здравствуйте, решил след. задачу(на C++): В телевизионном танцевальном марафоне с определением победителя с помощью телезрителей после каждого тура объявляется sms–голосование, в котором зрители указывают наиболее понравившуюся им пару из максимум 12 пар, которые участвуют в проекте. Напишите эффективную, в том числе и по используемой памяти, программу, которая будет обрабатывать результаты sms–голосования по данному вопросу. Результаты голосования получены в виде списка пар (каждый элемент списка соответствует одному sms-сообщению). Следует учитывать, что количество голосов в списке может быть очень велико. Перед текстом программы кратко опишите используемый алгоритм решения задачи. На вход программе в первой строке подается количество пришедших sms–сообщений N. В каждой из последующих N строк записаны через пробел две фамилии участников, первой указывается фамилия партнера. Длина строки не превосходит 50 символов. Пример входных данных: 4 Иванов Петрова Сидоров Смирнова Иванов Петрова Кузнецов Кузнецова Программа должна вывести список всех пар, встречающихся в списке, в порядке убывания (не возрастания) количества голосов, отданных за ту или иную пару, с указанием количества отданных за нее голосов. При этом каждая пара должна быть выведена ровно один раз, вне зависимости от того, сколько голосов было отдано за нее. Пример выходных данных для приведенного выше примера входных данных: Иванов Петрова 2 Сидоров Смирнова 1 Кузнецов Кузнецова 1 В решении присутствует цикл сортировки(вывод в порядке не возрастания), в котором пришлось переставлять местами и строки, поля структуры. Является ли такое решение оптимальным?

Ответов - 1

Поляков: PavelG пишет: В решении присутствует цикл сортировки(вывод в порядке не возрастания), в котором пришлось переставлять местами и строки, поля структуры. Является ли такое решение оптимальным? Думаю, что да. В условии явно требуется сортировка.



полная версия страницы