e-olymp 176. Выбор вождя

Условие задачи
Орки – одна из рас, населяющих мир Драэнор. Не отличаясь высоким интелектом, орки все же славятся своею силой и отвагой в бою. Ежегодно орки из разных кланов собираются в Долине Силы для того, чтобы избрать вождя всей Орды. В отличие от глупых людей, орки презирают выборы посредством голосования (да и, скажем прямо, все эти бюлетени, урны и избирательные участки чужды и непонятны орку, не державшему в руках ничего, кроме дубины и топора). Кандидаты в вожди сражаются друг с другом в честных поединках. В каждом поединке участвуют два претендента, один из которых выходит из него победителем, а другой оказывается поверженным. Проигравший в одном поединке орк выбывает из числа претендентов и не может участвовать в последующих поединках. Оставшийся в конце концов после всех боев кандидат и становит вождем Орды.

Старейшины орков всегда наблюдают за выборами и любят предугадывать кто победит на них. Однако далеко не всегда можно предсказать не то, что общую победу на выборах, но даже победителя в одном конкретном бою. Конечно же все зависит от силы сражающихся – кто сильнее, тот и победит, однако в случае равенства сил может победить любой из них – тут уж как звезды станут.

Старейшины обратились к вам с просьбой написать программу для определения количества претендентов, которые могут стать вождями.


Входные данные
В первой строке входного файла записано количество [latex]N[/latex] претендентов на звание вождя в этом году [latex](1 ≤ N ≤ 1000000)[/latex], а во второй – [latex]N[/latex] целых чисел в пределах от [latex]1[/latex] до [latex]10000[/latex], каждое из которых определяет силу соответствующего кандидата.

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

Тесты

Входные данные Выходные данные
[latex]5 \\ 1 \: 2 \: 3 \: 4 \: 5[/latex] [latex]1[/latex]
[latex]6 \\ 2 \: 2 \: 2 \: 2 \: 2 \: 2[/latex] [latex]6[/latex]
[latex]6 \\ 3 \: 2 \: 1 \: 3 \: 1 \: 1[/latex] [latex]2[/latex]
[latex]9 \\ 3 \: 2 \: 1 \: 3 \: 1 \: 5 \: 1 \: 5 \: 5[/latex] [latex]3[/latex]
[latex]2 \\ 1 \: 2 [/latex] [latex]1[/latex]
[latex]6 \\ 1 \: 7 \: 3 \: 4 \: 5 \: 5[/latex] [latex]1[/latex]

Код программы

Решение задачи
Так как задача на потоковую обработку создаем цикл, который работает пока у нас вводится число «Сила Орков». В самом цикле происходит следующее:

  1. Если «Сила Орков» больше max, то мы в переменную max присваиваем значение из «Силы Орков» и счетчику присваиваем единицу.
  2. Если «Сила Орков» равна max то мы прибавляем к счетчику [latex]1[/latex].

Выводим счетчик на экран.

Ссылки

  • Задача на сайте E-olymp
  • Код решения в Ideone

Добавить комментарий