На участие в олимпиаде было прислано 10 работ. В этом видео мы проводим тестирование всех программ. Домашнее задание - составить словесный алгоритм ИИ.
Дата отправки отчёта:
12 декабря 2015 г.
Задание выполнено: за
3 час. 00 мин.
Чему научился:
Искать разные способы решения поставленной задачи. Сравнивать эффективность разных алгоритмов с помощью C#. Эффективно играть в Морской бой. :-)
Что было сложным:
Придумать свой эффективный алгоритм, отличающийся от предложенных. Пока не удалось. Предположения: - задействовать random, чтобы защититься от искусственно подобранных "контррасстановок"; - перед каждым выстрелом находить возможное расположение кораблей; - стремиться к равномерному обстрелу вертикалей и горизонталей; - возможно, использовать заготовленные шаблоны совместно с random.
Комментарии:
Понравился алгоритм Orange. Свой пока сделаю простым. 1. Создадим матрицу 10 × 10, в которой номерами установим порядок обстрела всех точек. - Правило обстрела выберем по диагоналям с постепенно уменьшающимся интервалом. - Оставшиеся часть матрицы заполним, отразив первую зеркально. 2. Будем последовательно перебирать в заданном порядке я чейки для обстрела. 3. Стреляем, если ячейка имеет статус "неизвестно". 4. Если ранили, то добиваем корабль. - проверяем ячейки по горизонтали и по вертикали от раненой; - если снова попали, запоминаем направление, а соседние ячейки в другом измерении помечаем "мимо";; - если после этого промах - добиваем в обратную сторону;
Хороший алгоритм. Понравилось, что достаточно быстро проверяются клетки на граничных линиях, на 5-12 ходах. Опытные игроки отдают под бой многопалубные корабли и оставляют одиночным целых 60 клеток в распоряжение. Чем раньше уничтожишь многопалубники, тем лучше.
Здорово! Попробовал искать цифры 1, 2, 3, 4, 5,.... из-за смены цветов это оказалось непросто! Ищешь то старый цвет и думаешь - ну где же где же 13.... Красиво, молодец!
Понятно!))) Разные цвета появлялись почти случайно. Я для себя помечал небольшие группы одним цветом, чтобы самому отслеживать равномерность и заполнения поля числами. А потом для облегчения повторного поиска внизу добавил шкалу с соответствием числовых диапазонов цветам.
Начинаем практику по языку C#
Чтобы стать хорошим программистом — нужно писать программы.
На нашем сайте очень много практических упражнений.
После заполнения формы ты будешь подписан на рассылку
«C# Вебинары и Видеоуроки»,
у тебя появится доступ к видеоурокам и консольным задачам.
Несколько раз в неделю тебе будут приходить письма —
приглашения на вебинары, информация об акциях и скидках,
полезная информация по C#.
Научился: Познакомился с представленными на уроке алгоритмами - это фантастика!!! Одно дело реализовать алгоритм, а другое - его придумать и описать!!!! Мышление участников, представивших свои алгоритмы, меня привело в восторг!!! Отдаю свой голос безусловно за Оранджа 2775 в обоих вариантах! Он умудрился придумать абсолютно нетривиальный алгоритм, ломающий систему в рамках правил!!! (2775х). Хотя авторы других алгоритмов проявили не меньшую находчивость их алгоритмы более понятны для восприятия и осмысления ))))))
Научился: Научился вряд ли чему, было интересно посмотреть на алгоритмы других людей, понял
к чему надо стремиться так как мой алгоритм пока что показывает в среднем 64 удара за игру
Понравился алгоритм Евгения и Orange (читерский). Мое мнение что отчеты этого и предыдущего урока надо поменять местами , так как на прошлом уроки многие реализовали алгоритм, а в этом надо составить словесный алгоритм ИИ, что поздновато.