Курсы по программированию

Формула программиста
основатель — Волосатов Евгений Витольдович

Морской Бой / Олимпиада - Самый лучший алгоритм

  • На участие в олимпиаде было прислано 10 работ.
    В этом видео мы проводим тестирование всех программ.
    Домашнее задание - составить словесный алгоритм ИИ.
  • Дата отправки отчёта: 29 августа
  • Задание выполнено: за 1 час. 00 мин.
  • Чему научился: Просмотрела разные алгоритмы и их загрузку через абстрактный класс.
  • Что было сложным: Понять как это все работает. И алгоритмы и их загрузка.
  • Комментарии: Алгоритмы public и orange. Как я поняла, к любому из представленных алгоритмов можно найти более оптимальные расстановки. Есть мысль использовать  в программе 2-3 алгоритма, выбирая номер алгоритма рандомно.
    Алгоритм.
    Найти все точки, где может быть четырехпалубный корабль.
    Выделить их в массив.
    Стрелять рандомно по свободным, пока есть не проверенные.
    Если корабль подбит, пометить соседние ячейки как пустые.
    Если ранен, рандомно проверить во всех направлениях, пока не останется одно. Добиваем корабль. Здесь можно сделать проверку какие корабли остались и определить  может ли  корабль быть размещен горизонтально/вертикально, сколько. И стрелять по наиболее удачной ячейке.
    Далее проверяем на двухпалубные корабли. Опять выделяем места, где они могут быть размещены и стреляем рандомно, пока не проверим все.
    Оставшиеся однопалубники ищем рандомно из числа не проверенных ячеек.
  • Оценка видео-уроку:
Отчёт от 1232 за Морской Бой / Олимпиада - Самый лучший алгоритм




Оцени работу

 
Сохранить страницу:

7238. Константин
Константин
ответить
→  Фомичева Наталья  # Морской Бой / Олимпиада - Самый лучший алгоритм / 2016-08-30 08:55

Жуть какая. Не представляю как это делать.


  • Отчёт оценивали:
    1Евгений Витольдович+1   6452Lik_Kirill+1   5649Максим Лапшинов+1   10157Кирилл Лебедев+1   9263Андрей Н.+1   10670Сергей Соколов+1   4992Николай+1   10494Алексей В.+1   689Igorenzia+1   10390Amerigo+1   5760Мариша +1   11017Владимир Петреченко0   5257Антон+1   11147Сергей0   3747Сергей+1   8275Tekashnik+1   4004Елена+1   7119Новопашин Владимир+1   10365Rita+1   7238Константин+1   4395Денис+1   4732Sergey+1  

Начинаем практику по языку C#




Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.
Научился: Разным алгоритмам
Трудности: Ничего
Было невероятно интересно послушать. Может чуть позже создам свой алгоритм
Научился: Алгоритм ИИ: 1. Сначала ИИ должен найти и уничтожить самые большие корабли, начиная с четырёхпалубника. Море простреливается с шагом 4. 2. Если он попал в какой-нибудь корабль, ИИ добивает его и продолжает простреливать Море. 3. После того как был найден и уничтожен четырёхпалубник, ИИ начинает простреливать Море с шагом 3 в поисках трёхпалубников. 4. В поисках двухпалубников ИИ стреляет с шагом 2 и потом ищет и добивает однопалубные. 5. Найдя и убив какой-либо корабль ИИ отмечает область вокруг него как пустую, т.к. корабли не могут соприкасаться.
Трудности: всё понятно.
Мне понравился алгоритм 4004. Продолжим!