На участие в олимпиаде было прислано 10 работ. В этом видео мы проводим тестирование всех программ. Домашнее задание - составить словесный алгоритм ИИ.
Дата отправки отчёта:
1 сентября 2015 г.
Задание выполнено: за
6 час. 00 мин.
Чему научился:
NEW: написал алгоритм, подробнее - в графе Замечания. Евгений Витольдович, пожалуйста, прочитайте)
OLD: посмотрел варианты алгоритмов. почему-то перед уроком не продумал свой алгоритм, поэтому теперь невольно оглядываюсь на увиденное. понравилась аналитическая работа тёзки-земляка Александра-4394 и конечно же вариант Оранджа с весами рандомно расставленных кораблей (про хак с памятью и говорить нечего)) )
Что было сложным:
вроде ничего. алгоритм хочу написать сначала сам, прежде чем смотреть следующий урок. за основу возьму рассуждения Александра - логично простреливать сначала четвёрки, затем тройки. Но корабли буду сразу добивать и главное - добавлять точки вокруг подбитых кораблей в список "не стрелять", сократив т.о. теоретически посчитанное число прострелов.
Комментарии:
написал-таки алгоритм сам. прикрепляю проект (и картинку-напоминалку про алгоритм) - там есть замечательная кнопка Kill 10 000 maps, которая практически повторяет последний тест из видеоурока - в цикле 10000 раз ставитрандомные корабли и пытается их убить. после нажатия на кнопку прога подвешивается на время, но по окончании циклов выдаёт результаты min/avg/max, которые, внимание!, лучше чем из видео!! Евгений, просьба к вам: посмотреть, проверить лично) если честно, сам не верю... (остальные кнопки вроде понятны)
Архив проекта:Ссылка доступна после самостоятельного выполнения этого урока
Даже зная алгоритм, его все равно реализовать не совсем просто. Буду рад если ошибусь :) . Буду очень ждать вашего следующего отчета. Задание очень интересное.
Александр, замечательное решение, главное без фанатизма, а то так и неузнаешь как было дальше реализовано, а ведь это тоже интересно! Вот посмотри отчет Ивана, он сделал наоборот начало выполнил уроки а потом уже доделал свой! www.videosharp.info/2146/checking/game6=189
да там в принципе, я думаю, и без старого проекта можно будет потестить: рандомная расстановка - она вроде не должна отличаться, и кол-во выстрелов у меня тоже считается при каждом вызове Sea.Shoot() в приложенном проекте в принципе всё есть для тестирования - большая кнопка Kill 10000, надо просто по коду глянуть что там никакого "читерства" хотя, я дошёл до 9 урока, там оказывается как раз надо сделать прогу, как те 10 из этого видеоурока. думаю, к 9 уроку моё дз не сильно будет отличаться от того что есть сейчас, просто всё это приведётся к такому же виду что и 10 олимп.решений.
Начинаем практику по языку C#
Чтобы стать хорошим программистом — нужно писать программы.
На нашем сайте очень много практических упражнений.
После заполнения формы ты будешь подписан на рассылку
«C# Вебинары и Видеоуроки»,
у тебя появится доступ к видеоурокам и консольным задачам.
Несколько раз в неделю тебе будут приходить письма —
приглашения на вебинары, информация об акциях и скидках,
полезная информация по C#.
Научился: Познакомился с представленными на уроке алгоритмами - это фантастика!!! Одно дело реализовать алгоритм, а другое - его придумать и описать!!!! Мышление участников, представивших свои алгоритмы, меня привело в восторг!!! Отдаю свой голос безусловно за Оранджа 2775 в обоих вариантах! Он умудрился придумать абсолютно нетривиальный алгоритм, ломающий систему в рамках правил!!! (2775х). Хотя авторы других алгоритмов проявили не меньшую находчивость их алгоритмы более понятны для восприятия и осмысления ))))))
Научился: Научился вряд ли чему, было интересно посмотреть на алгоритмы других людей, понял
к чему надо стремиться так как мой алгоритм пока что показывает в среднем 64 удара за игру
Понравился алгоритм Евгения и Orange (читерский). Мое мнение что отчеты этого и предыдущего урока надо поменять местами , так как на прошлом уроки многие реализовали алгоритм, а в этом надо составить словесный алгоритм ИИ, что поздновато.