Змейка(17)

  • 24
  • Недоступна
Теперь закончим класс Snake. Змея состоит из кусочков. Давай каждый ход просто добавлять один кусочек со стороны головы, а самый последний - удалять. Тогда получится, что змея ползет. Добавлять кусочек нужно рядом с текущей головой (кусочком номер 0).
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (107)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
[M210] Java Developer
20 июня, 07:08
Валидатору не понравилось, что мой метод void move(int dx, int dy) был private)))))) Причем он private еще с предыдущих задач.
Андрей Кадецкий
Уровень 30, Киев, Украина
18 июня, 20:22
Смотрю многие жалуются что в консоли глаза рябит. По ссылке есть комментарий как переделать под графический интерфейс. Получилось прикольно.
Igor Petrashevsky
Уровень 34
4 июня, 17:27
Борьба с валидатором. в "эталоне" sections.add(0, head); можно вынести выше, т.к. она в и if , и в else и на удаление хвоста не влияет. Получение головы тоже довольно странное, потому что есть готовые геттеры головы. Мне не понравилось.
Руслан
Уровень 42
15 мая, 11:28
убил несколько попыток из-за того, что выполнил проверку: if(isAlive) Из рекомендаций ментора не понятно, что ошибка кроется в этой проверке, так что было бы неплохо, если бы ментор сообщал, что данная проверка избыточна
Buble76
Уровень 38, Москва, Россия
27 апреля, 08:31
Всего эту задачу решили 11125 учеников. Долго тупил над тем что сначала начал проверки. А надо было сначала создавать head, ее проверять на соответствие условиям и потом уже мышь/не мышь ...
The Body of the Atr
Уровень 51
12 марта, 16:12
Всего эту задачу решили 10799 учеников.
Sergey Kornilov
Уровень 38, Petropavlovsk, Казахстан
18 декабря 2021, 09:59
Всего эту задачу решили 10623 учеников.
Иван Плотников
Уровень 40, Санкт-Петербург, Россия
18 октября 2021, 09:56
Решил. Прошёл. Но работает криво. Змея сама себя пересекает без проблем. И в целом ощущение что я собрал что-то из костылей....
aleksdenni
Уровень 37, Полтава, Украина
7 сентября 2021, 15:27
Больше всего мне понравились обновления поля ))
Андрей
Уровень 37, Москва, Россия
17 июля 2021, 11:38
Валидатор откровенно тупит в этой задаче. Например голову можно добавить независимо от того совпала она с мышью или нет, но валидатор почему-то не пропускает такое решение и требует, что бы голова добавлялась в каждой ветке if-else - там где съели мышь и там где не съели. Зачем? Если можно написать sections.add(0, head) один раз перед if-else, а в условиях либо есть мышь, либо удалять хвост. Плюнул угадывать и скопипастил правильное (кривоватое) решение.
Vladyslav Pelykh
Уровень 41, Днепр, Украина
23 августа 2021, 09:19
Валик принял такой код:
sections.add(0, head);
       if (!(head.getX() == Room.game.getMouse().getX() && head.getY() == Room.game.getMouse().getY())){
           sections.remove(sections.size() - 1);
       } else Room.game.eatMouse();