Поскольку это, как представляется, обучение упражнения, вот это подход, который вы можете взять с собой:
- Сделать ассоциативный контейнер, скажем,
map<string,int>
или unordered_map<string,int>
для ведения счетов
- Прочитайте файл по строке. Для каждой строки, которую вы получаете, увеличивайте количество в своем ассоциативном контейнере
- После того, как вы закончите читать файл, пройдите по контейнеру, найдите самый высокий счет и сохраните связанный с ним ключ
- Когда вы закончите с циклом, ключ которые вы нашли, и связанный с ним подсчет дают ответ на вашу проблему.
Один из способов понять этот подход - рассмотреть ту же проблему, но с заменой строк на цифры. Теперь все, что вам нужно сделать, это написать цикл, который выполняет count[number]++
для каждого number
в списке. Описанный выше подход по сути является одним и тем же, но вместо номера для вашего индекса используется строка.
Есть ли причина для этого быть в C++? Это тривиально реализовать как скрипт оболочки. – user657267
Да, это должно быть C++. Это упражнение – bhzag
Если бы это был список чисел, как бы вы решили проблему? Если вам нужно было сделать это вручную, а не с компьютером, как бы вы это сделали? –