Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
15 / 3 / 0
Регистрация: 18.01.2023
Сообщений: 282

Игра +1

02.11.2023, 18:23. Показов 676. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Игра +1 - это современная, набирающая популярность игра на просторах интернета. Она завлекает всех своей простотой и желанием добиваться высоких результатов за минимальное количество действий.

Давайте немного познакомимся с её сутью. Выложено некое поле размером 1×n клеток. В каждой клетке записано некоторое число. Если на поле есть два одинаковых числа, то их можно объединить. Операция объединения удаляет два числа, над которыми была произведена операция, а также создает новое число (на одной из освободившийся клетке), которое на единицу больше удаленных. Например, если была объединена пара двоек, то они будут удалены, а новым числом будет 3. Игра считается законченной, если было получено некоторое загаданное число
m или на поле больше нет одинаковых чисел.

Как мы обсудили ранее, игроки хотят побеждать за минимальное количество действий. Так как единственное действие, которое существует - это объединение, то, соответственно, побеждать за минимальное количество объединений. Один из игроков решил считерить и попросил Вас написать ему программу, которая исходя из поля будет определять, сколько минимально чисел с первоначального поля надо объединить между собой, чтобы закончить игру, или выведите −1, если невозможно собрать нужное число. Полученные в результате объединения новые числа в ответе учитывать не нужно.

Формат входных данных

В первой строке входных данных записано два целых числа (1≤n≤106) и (2≤m≤100) − количество чисел и цель, которую надо получить. Во второй строке записано
n целых чисел ai

(1≤ai <100, max(a)<m) − числа на поле.

Формат выходных данных

Выведите одно число − минимальное количество чисел из первоначального поля, которое надо объединить для получения нужного результата.

Пример входных данных
6 4
1 2 3 1 1 2

Пример выходных данных
3

Пояснение к примеру:

Для получения результата 4 достаточно выбрать [2,3,2]: - двойки суммируются как одинаковая пара чисел, получая новое число: [3,3];
- тройки суммируются как одинаковая пара чисел, получая новое число:
[4]
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
02.11.2023, 18:23
Ответы с готовыми решениями:

Игра Кости, игра с компьютером
Всем привет! Делаю консольную игру Кости. Условия такие: 1) Перед игрой все игроки бросают кость, первым начинает тот, у кого выпало...

Игра слов, игра Scrabble
Задание: Создать программу для решения задачи построения слова из некоторого множества букв (игра Scrabble) используя алгоритмы поиска в...

Игра на C++
Господа эксперты, допустим что у меня в графическом режиме есть некий статический обьект. Как мне им управлять с клавиатуры?...

2
 Аватар для DeCrinal
64 / 40 / 31
Регистрация: 15.04.2017
Сообщений: 176
02.11.2023, 18:41
Вроде бы решается просто сортировкой и потом одним проходом объединений (с проверкой условия на равенство m в каждой итерации)
0
15 / 3 / 0
Регистрация: 18.01.2023
Сообщений: 282
02.11.2023, 18:51  [ТС]
DeCrinal, а как сделать этот проход
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
02.11.2023, 18:51
Помогаю со студенческими работами здесь

Игра
Скиньте пожалуйста пример консольной игры на с++

2Д-игра
Здравствуйте, хочу создать 2D игру. Раньше такие игры писал на C++ Builder, но больше не хочу (не серьёзно это ка-кто). Изучаю OpenGL, но...

Игра на С++
Ну в общем нужна вам или нет, но всё равно выложу:) Это крестики-нолики. #include &lt;graphics.h&gt; #include &lt;stdlib.h&gt; ...

Игра на С++
2 игрока играют в следующую игру: они разложили однокопеечные монетки в стопки (в разных стопках может быть различное количество монет), а...

C++ игра в 21
Пишу лабораторную по игре в 21(не буду здесь объяснять все правила, но если вкратце то игроки достают из колоды карты и необходимо собрать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru