Кодирование вызов о двух супергероях, разрушающих город.
Здравствуйте, я делал эту задачу кодирования, чтобы улучшить свои навыки, и хотя я мог понять простой пример (приведенный в ссылке) или другие примеры с легкими комбинациями, я не мог понять, как работать с более сложными.
На первом изображении вы можете прочитать текст задачи, но в основном это город с n зданиями. Каждое здание имеет определенную высоту. Есть 2 супергероя, один слева и один справа. Супергерой справа разрушает здание с увеличивающейся высотой со своей точки зрения, в то время как тот, кто слева, делает то же самое, но со своей точки зрения. Вам нужно сказать, сколько ходов им нужно, чтобы уничтожить город.
Ссылка с подробностями: https://imgur.com/a/4srl9Vo
Пример (цифры-это высота зданий): 1 2 5 3 1.
- первый ход супергероя влево: уничтожить 1, 2 и 5.
-> Второй ход супергероя вправо: уничтожить 1 и 3.
-> Все здания разрушены, ответ-2.
Это было довольно легко. Чего я не могу понять, так это того, что происходит в подобном сценарии.
- Массив зданий: 100 10 1 200 40 30 10 25 30.
Я знаю, что ответ-4. Но я не понимаю, что должно произойти в сценарии, где слева есть первое здание с большей высотой, чем второе. Уничтожает ли он первый? Продвигается ли он вперед, пока не сможет уничтожить что-то (например, 1 и 200). Я потерял часы, пробуя разные вещи, но я не могу придумать 4 хода разумным способом. Возможно, я слишком много думаю.
К сожалению, больше инструкций нет.
Что я уже пробовал:
Мой код работает для простых примеров, но не для более сложных.