Насколько я понял n должна быть меньше или равна 100, верно? Тогда вот, он, может и не самый эффективный, но довольно понятный и работающий.
#include <iostream>
using namespace std;
int main(){
int n,maks,schetchik; /* n - это количество элементов массива, maks - думаю, знаешь, schetchik - высчитывает количество повторений максимального числа в массиве */
cin >>n;
if(n<=100){
int a[n]; /*обьявляем количество эелементов массива и проверяем, чтобы его количество было меньше или равно 100*/
for(int i=0;i<n;i++){ /*цикл for обьявляет переменную i, далее делая её текущим индексом элемента массива */
cin >> a[i];
if (a[i]>-30000 && a[i]<30000){ /* проверка условия, данного задачей
*/
if(i==0){maks=a[i]; schetchik =1;}; /* особая разработка автора, максимальным элементом массива становиться самый первый элемент (ну по крайней мере, я ни у кого не видел) */
if (i!=0 && maks == a[i]) {schetchik +=1;}; /* и ещё одна моя собственная разработка, проверка, не является ли элемент массива первым, а так же если он равен максимальному, то счетчик увел. на 1 */
if (maks<a[i]) {maks = a[i]; schetchik = 1; }; /* а тут мы проверяем на то, не являеться ли текущий массив большим чем максимальный, если да, то счет сбрасывается и макс. равняется текущему числу */
}
}
cout << schetchik; } //ну и вывод числа, всё довольно просто
}
101 2 = 1∙2^2+0∙2^1+1∙2^0 = 4+0+1 = 5 10
100 2 = 1∙2^2+0∙2^1+0∙2^0 = 4+0+0 = 4 10
1001 2 = 1∙2^3+0∙2^2+0∙2^1+1∙2^0 = 8+0+0+1 = 9 10
10 2 = 2 10
111 2 = 1∙2^2+1∙2^1+1∙2^0 = 4+2+1 = 7 10
1110 2 = 1∙2^3+1∙2^2+1∙2^1+0∙2^0 = 8+4+2+0 = 14 10
1000 2 = 1∙2^3+0∙2^2+0∙2^1+0∙2^0 = 8+0+0+0 = 8 10
1010 2 = 1∙2^3+0∙2^2+1∙2^1+0∙2^0 = 8+0+2+0 = 10 10
1111 2 = 1∙2^3+1∙2^2+1∙2^1+1∙2^0 = 8+4+2+1 = 15 10