Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.60/35: Рейтинг темы: голосов - 35, средняя оценка - 4.60
2 / 2 / 0
Регистрация: 03.05.2020
Сообщений: 202

Пещера с монстрами

27.07.2021, 04:48. Показов 8065. Ответов 41
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Пещера с монстрами
Юный программист Коля играет в компьютерную игру. Чтобы пройти очередной уровень в этой игре, ему нужно зайти в пещеру с n монстрами и убить их одного за другим. Монстры имеют здоровье h1,…,hn. Если герой Коли имеет силу X, то каждый удар героя по монстру будет уменьшать здоровье монстра на X. Монстр погибает, когда его здоровье становится меньше или равно нулю. Герой Коли имеет ограниченную выносливость, поэтому он сможет нанести не более чем m ударов. Таким образом, чтобы пройти уровень, необходимо победить всех монстров не более чем за m ударов.

В данный момент герой Коли имеет силу удара равную 0. Игрок может повысить силу удара своего героя до натурального числа X, но для этого ему придётся потратить X игровых очков. Коля не хочет тратить лишних очков, поэтому решил найти такое минимальное натуральное число X, которого будет достаточно для успешного прохождения пещеры с монстрами. Помогите Коле найти это число или выведите −1, если такого X не существует.

Входные данные

В первой строке входных данных задано натуральное число n (1≤n≤105) — количество монстров. Во второй строке заданы через пробел n целых чисел — здоровье монстров 1≤hi≤109. В третьей строке задано натуральное число m (1≤m≤109) — выносливость героя.

Выходные данные

Выведите ответ на задачу.

Примеры
Ввод
10
5 20 7 4 18 19 19 3 10 2
25
Вывод
5
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.07.2021, 04:48
Ответы с готовыми решениями:

Пещера с монстрами
Пещера с монстрами Юный программист Коля играет в компьютерную игру. Чтобы пройти очередной уровень в этой игре, ему нужно зайти в пещеру...

Пещера с монстрами
Пещера с монстрами Юный программист Коля играет в компьютерную игру. Чтобы пройти очередной уровень в этой игре, ему нужно зайти в пещеру...

Пещера сокровищ
Для того чтобы открыть тайную дверь для выхода из пещеры с сокровищами нужно выбрать 4 монеты нужного типа из сундука, в котором лежат...

41
738 / 705 / 110
Регистрация: 29.05.2015
Сообщений: 4,351
24.08.2022, 08:17
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от dmitrii2000 Посмотреть сообщение
Примеры
Ввод
10
5 20 7 4 18 19 19 3 10 2
25
Вывод
5
Я чет ничего не понял. Игрок имеет выносливость 25 - т.е. может нанести 25 ударов по монстрам. Суммарная сила всех монстров - 107. Если принять число ущерба за один удар Х = 4, то игрок нанесёт 25*4 = 100 очков поражения монстрам - следовательно убьёт не всех. Поэтому правильный ответ - 5.

Это и есть вся задача? Результат Р = 107 / 25, и если остаток больше нуля, то Р = Р + 1?
0
 Аватар для Tim977
40 / 12 / 0
Регистрация: 05.08.2022
Сообщений: 12
24.08.2022, 10:09
Цитата Сообщение от Croessmah Посмотреть сообщение
Ты че еще не написал код и не отладил, а уже балаболишь тут?

Я считаю, что Usaga прав, и честно говоря, уже сбился со счету, сколько выложенных условий задач вижу от dmitrii2000 и как он клянчит решения , несколько раз под постом пишет помогите, помогите пж, решите кто-нибудь, и сам когда задает вопрос, нет никакой попытки решения, ничего, тоесть он сам даже не пытался ничего решить, и еще за него заступаешься, нелюблю таких как автор вопроса... Чтобы ко мне вопросов не было, держите задачу... Даже жалко таких, потом если попадут на очный отбор, ничего сделать там не смогут

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include <iostream>
#include <vector>
#include <algorithm>
 
using namespace std;
 
bool f(vector<int> h, int x, int n, int m)
{
    int ans = 0;
    for (int i = 0; i < n; i++) {
        ans += (h[i] + x - 1) / x;
    }
    return ans <= m;
}
 
int main()
{
    int n, m, temp;
    cin >> n;
    vector<int> h;
    for (int i = 0; i < n; i++) {
        cin >> temp;
        h.push_back(temp);
    }
    cin >> m;
    if (m < n) cout << -1;
    else {
        int l = 0, r = *max_element(h.begin(), h.end());
        while (r > l + 1) {
            int x = (r + l) / 2;
            if (f(h, x, n, m)) r = x;
            else l = x;
        }
        cout << r;
    }
}
Всем хорошего дня и поймите очевидное, нет смысла в тупую копировать код и сдавать в систему, хотя ладно, сомневаюсь, что на тебя это повлияет



Так, а куда делись все посты?????
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
24.08.2022, 10:09

Андрей играет в новую игру, в которой герой сражается с монстрами
Андрей играет в новую игру, в которой герой сражается с монстрами. Герой наносит монстру удары. Один удар отнимает у монстра одну единицу...


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

Или воспользуйтесь поиском по форуму:
42
Ответ Создать тему
Новые блоги и статьи
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет! За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru