Есть ответ 👍

На с++ , и как-нибудь попроще и без вектора подсчитайте за один проход массива, сколько его элементов равны максимальному элементу. входные данные на вход программе сначала подается значение n100 — количество элементов в массиве. в следующей строке входных данных расположены сами элементы массива — целые числа, по модулю не превосходящие 30 000. выходные данные выдайте количество искомых элементов массива. примеры входные данные 8 4 3 5 2 5 1 3 5 выходные данные 3

233
500
Посмотреть ответы 3

Ответы на вопрос:


насколько я понял 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; } //ну и вывод числа, всё довольно просто

}

bajkovat7
4,5(38 оценок)

int n100[5] = {1,2,3,4,5};

int i = 0, j = 0, x = 0;

for(i = 0; i < 5; i++){

if(n100[5]> x){

x=n100[i]; }

else{

if(n100[i]=x){

j++; }

}

cout < < j;

не запускал. мысль проста, один цикл, за обход ищем максимальное иначе равное максимальному.


N= 2^i 26 = 2^i i = 5 бит нужно для кодирования одного символа в племени мульти. следовательно, для одного символа достаточно пятиразрядного двоичного кода.

Популярно: Информатика