Битва роботов

  • 16
  • Недоступна
Юный робот решил запрограммировать сам себя на бой с другим роботом по имени Сгибальщик-2. Однако до конца дела пока не довёл. Теперь это ваша проблема… Ох, простите, ваша задача. Впрочем, не стоит беспокоиться: битвы роботов отличаются от драк тех, кто из плоти и крови ещё и своей логичностью.
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (339)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Михаил Клименко14 уровень, Краснодар
вчера, 18:36
Ну вот, настроился штурмовать эту задачу - и она на 4-й попытке вдруг решилась... Думал, надо будет рандом добавлять в методы атаки и защиты :)
QQQwertYy900016 уровень, Замусральск
Wednesday, 20:31
Ошибка в задании. Открывайте в коментариях вкладку "Популярное" и читайте самый популярный комент. Там всё подробно описано, почему ошибка 4 пункта. А если всё-таки не ошибка, можете попробовать решить задачу через четные\нечётные числа и остаток от деления.
Алекс16 уровень, Санкт-Петербург
Monday, 19:45
Как вариант изменить правило сравнивания: вместо hitcount сравнивать остаток от деления на 4 этой переменной. Тогда все работает
AndyS14 уровень, Москва
Thursday, 01:03
Я просто заменил "== 4" на ">=4" и всё ок.
Verhun Kyrylo16 уровень
28 June, 11:42
Ну не скажу что все понял. Но что то все же понял. Задачу решил. Единственное что подсмотрел генерацию рандомного числа. Было чувство что что то не так с переменной hitCount, но не мог понять, что с ней не так. Игрался с час, решил не с первого раза.
Слава15 уровень, Москва
27 June, 18:00
Из защиты можно удалить: hitCount = hitCount + 2;
Vlad16 уровень, Санкт-Петербург
22 June, 21:26
Задача БОМБА!!
Иван16 уровень, Нижний Новгород
22 June, 17:34
Идея ругалась на методы getName которые вызываются в методе Solution. Подумал, что из-за того, что в методе doMove параметры заданы типа AbstractRobot:
public static void doMove(AbstractRobot robotFirst, AbstractRobot robotSecond) {
заменил тип параметров на просто Robot:
public static void doMove(Robot robotFirst, Robot robotSecond)
все получилось. Подскажите кто-нибудь также обходил эту ошибку? или через создание доп метода getName в абстрактом классе?
Глеб15 уровень, Киев
28 June, 17:48
Я сделал так же.
AndyS14 уровень, Москва
Thursday, 01:04
Нет, достаточно в AbstractRobot объявить метод getName() как абстрактный, без реализации.
Fischerski15 уровень, Москва
19 June, 08:02
Спасибо большое авторам за эту задачу. Не скажу что она мне далась легко, зато в понимании основ ООП очень даже не плохой вклад внесла. Побольше бы таких задач
Kira16 уровень, Москва
10 June, 20:11
Прекратите писать, что всё вокруг легко и вы решили с первой попытки. Молодцы, конечно, но не демотивируйте тех, кто затупил.
Roman Kiselev14 уровень, Пермь
28 May, 09:53
Мда меня положило от первых двух условий. :)