|
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636
|
||||||
Найти количество одинаковых элементов массива30.10.2019, 21:58. Показов 1358. Ответов 18
Метки С++ для начинающих (Все метки)
Здравствуйте, мне попалась задачка с таким условием:
Дан список из чисел. Нужно вывести сколько раз повторялись числа Примеры входных и выходных данных: 1 1 2 2 2 3 3, ответ - 3 1 2 3 3 4 4 5 5 6 7, ответ - 7 -100 -99 -98 -97 -96, ответ - 5 Вот мой код:
Помогите, я чет не прослеживаю логику по которой это должно выполнятся
0
|
||||||
| 30.10.2019, 21:58 | |
|
Ответы с готовыми решениями:
18
Найти количество одинаковых элементов массива Найти количество одинаковых элементов массива Найти количество одинаковых элементов массива |
|
Диссидент
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
|
|
| 30.10.2019, 22:49 | |
|
Vlast001, чет мне кажется, ты неправильно задание сформулировал. Может быть - "Сколько разных элементов" ?
А ты "if (mas[i] == mas[i+1])" считаешь сколько раз соседи одинковые. Да и то неправильно. mas[i+1] при i=size-1 выводи за пределы массива
0
|
|
|
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636
|
||||||
| 30.10.2019, 22:50 [ТС] | ||||||
|
_Ivana, Объясните подажлуйста то, что вы написали, детально, особенно ту часть где стоит <set>, почему
0
|
||||||
|
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636
|
|
| 30.10.2019, 22:56 [ТС] | |
|
0
|
|
|
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
|
|||
| 30.10.2019, 22:57 | |||
|
1 1 2 2 2 3 3, ответ: число 1 - 1 раз повторяется, число 2 - 2 раза, число 3 - 1 раз 1 2 3 3 4 4 5 5 6 7, ответ: число 3 - 1 раз повторяется, число 4 - 1 раз, число 5 - 1 раз -100 -99 -98 -97 -96, ответ: нет повторов
0
|
|||
|
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636
|
||||
| 30.10.2019, 23:01 [ТС] | ||||
|
Добавлено через 4 минуты
0
|
||||
|
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
|
||
| 30.10.2019, 23:06 | ||
|
0
|
||
|
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636
|
|
| 30.10.2019, 23:32 [ТС] | |
|
Yetty, _Ivana,
Допустим такой список чисел: 1 2 3 4 4 4 6, ответ должен быть не 1 как вы считаете, а 5 1. начался цикл, смотрим первый элемент - это 1 сравнили его со следующим элементом, они не ровны, пошли дальше не нашли в списке больше единиц - увеличили счетчик на 1. 2. так мы повторяли до 4 и у нас в счетчике уже число 3, теперь пошли по числу 4, смотрим что следующий(4 индекс) тоже 4, идем дальше, и снова видим что это число 4, сравниваем уже с последним числом( индекс в массиве 6) и он оказался не равен предыдущему числу (пятому индексу) - увеличили счетчик на 1 3. смотрим число 6 - это оказался последний индекс в массиве, значит сравнивать больше не с чем - увеличили счетчик на 1. (если бы последний элемент массива такой же как и предыдущий и т.д. то мы сравнением как во втором пункте только мы найдем ни отличающийся число, а конец массива - тоже увеличили счетчик на 1) Вот по такому алгоритму мы нашли, что наш ответ 5, и по такому как я понял и получились ответы в примерах входных/выходных данных
0
|
|
|
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
|
|
| 30.10.2019, 23:33 | |
|
_Ivana, в задаче требуется вывести количество различных чисел.
0
|
|
|
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
|
||
| 30.10.2019, 23:48 | ||
однако учитывая что данные подаются отсортированными, от ТС похоже ждут другого способа решения.
0
|
||
|
Диссидент
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
|
||||||
| 30.10.2019, 23:50 | ||||||
|
Vlast001, Если то, что вы рассказали в посте 11, правда, то ваш код в посте 1 почти верен. Чуток подправим строчки 10-14
0
|
||||||
|
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
|
|
| 31.10.2019, 00:02 | |
|
Vlast001, Вы можете нормально сформулировать задачу ? какие числа подаются - отсортированные или произвольные, что является признаком окончания ввода ?
0
|
|
|
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636
|
|||||||||||||||
| 31.10.2019, 00:54 [ТС] | |||||||||||||||
|
Байт,
P.S.
![]() Yetty, )1. Ввод через аргументы командной строки: a.exe 1 1 2 2 2 3 2. Чтение из файла ( желательно через аналог freopen() в с++) 3. Вводить числа после запуска приложения и остановить ввод допустим по нажатию клавиши q или все элементы вводить через пробел, а окончание ввода клавиша enter
0
|
|||||||||||||||
|
Диссидент
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
|
|||
| 31.10.2019, 08:36 | |||
|
Массив 1 1 2 2 2 3 3. size = 7 mas[0] = 1 mas[1] = 1 mas[2] = 2 mas[3] = 2 mas [4] = 2 mas[5] = 3 mas[6] = 3. ВСЕ. Никакого mas[7] нет, не существует в природе. Мусор там случайный. for(i=0; i<size; i++) === for(i=0; i<7; i++) На последнем проходе цикла i = 6. В выражении mas[i]!=mas[i+1] (===) mas[6] != mas[7] вы обращаетесь к несуществующему элементу
0
|
|||
| 31.10.2019, 08:36 | |
|
Помогаю со студенческими работами здесь
19
Найти количество одинаковых элементов массива
Найти максимальное количество одинаковых элементов массива
количество одинаковых элементов массива Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|