Новости

Олимпиада по программированию, задание от MAIL.RU

Приглашаем всех желающих принять участие в олимпиаде по информатике и программированию, посвященной 95-летию Воронежского государственного университета. В рамках этого соревнования студентам любых вузов, факультетов, направлений и форм обучения будет предложено выполнить ряд заданий, сформулированных техническими специалистами ведущих компьютерных компаний города Воронеж, среди которых Mail.Ru Group.
Специалисты воронежского филиала Mail.Ru Group на протяжении 7 лет осуществляют поддержку одних из самых успешных игр на российском рынке, среди которых Warface, Cross Fire, Perfect World. Именно здесь занимаются разработкой многопользовательской игры «Аллоды  Онлайн», которая издана не только в России, но и в США, Бразилии, Турции, Китае, Корее, странах Европы. Кроме того, прямо сейчас идет работа по созданию нового многообещающего проекта – SkyForge. Здесь создаются целые вселенные.
В рамках интернет-соревнования предлагаем выполнить следующее задание: необходимо разработать программу для игры в точки.
Основные правила игры
1. Игра идет на поле размером 19x16 пунктов. Пунктом считается пересечение линий на поле.
2. Игроки ходят по очереди (1 ход — одна точка). Первый ход каждый из соперников может сделать в любую точку на поле.
3. При создании непрерывной (по вертикали, горизонтали, диагонали) замкнутой линии образуется область. Если внутри неё есть точки противника (при этом могут быть пункты, не занятые чьими-либо точками), то это считается областью окружения, в которую далее запрещено ставить точку любому из игроков. Если точек соперника нет, то область свободна и в неё можно ставить точки.
Если в результате хода образуются несколько областей (одна является подмножеством другой), то захваченной считается область, в которую входят все образовавшиеся области
4. При появлении в свободной области точки соперника она будет считаться областью окружения при условии, что точка соперника не была завершающей в его окружении.
Пояснение: представим, что есть непрерывная замкнутая линия, которая ограничивает некоторую область. Но в этой области нет точек противника. Потом противник сделал ход в эту область, эта область будет тогда считаться окружающей, но только в момент хода игрока, которому принадлежит область. При этом ход может быть сделан в любое другое место на поле (не обязательно входить в состав той окружающей области).
5. Точки, попавшие в область окружения, далее не участвуют в образовании линий для окружения.
6. Точки, поставленные на краю поля, не окружаются.
7. Время на обдумывание одного хода — не более 1 секунды. За нарушение времени обдумывания начисляются штрафные баллы. Если время обдумывания хода превышает 2 секунды, засчитывается поражение.
8. При попытке поставить точку в область окружения — на уже существующую свою точку или точку противника, а также точку по координатам, выходящим за пределы поля, засчитывается поражение.
9. Партия заканчивается, когда не осталось свободных мест. Победа определяется при подсчёте окружённых точек (побеждает игрок, который окружил большее число точек соперника).
Пояснение: Пусть есть окружающая область, которая (в момент Х) попала в окружение. В этом случае количество точек противника, которое область содержала до момента Х, не учитывается при подсчёте окружённых точек в конце партии.
Требования
Программа должна быть написана как консольное Win32 приложение, предоставляться в виде проекта с полными исходными кодами и в виде исполняемого файла.
Проект после открытия должен компилироваться с помощью свободно распространяемого ПО, ссылка на дистрибутив которого должна быть также предоставлена; кроме того, должна быть указана его версия.
Разрешается использовать языки Visual C++, C#, Pascal(Delphi), Java, Python.
В качестве аргумента командной строки программа должна принимать ключи -first или -second.
Если указан ключ -first, то программа ходит первой, если -second, то второй, дожидаясь данных о первом ходе.
Формат данных о ходе:
X Y
где X — горизонтальная координата от 0 до 18, Y — вертикальная координата от 0 до 15. Координаты пишутся построчно и разделены символом пробела.
Соответственно, программа при ожидании хода соперника должна со стандартного потока ввода ожидать поступление данных в этом формате или выводить данные о своем ходе на стандартное устройство вывода (если указан ключ -first или в ответ на поступивший ход), далее ожидая поступления информации об ответном ходе.
Пример очередного хода:
while (std::cin >> turnX >> turnY)
{
  int myTurnX = 0;
  int myTurnY = 0;
  
  // Do some magic on myTurnX, myTurnY
  
  std::cout << myTurnX << " " << myTurnY << std::endl;
}
Программа должна завершаться, если у нее отсутствует возможность сделать следующий ход (нет свободного пересечения линий поля, куда по правилам можно сделать ход) или после того, как она делает последний ход (в результате ее хода отсутствует возможность сделать следующий ход).
Оформление
Ждем ваших решений до 19:00 по московскому времени 9 декабря. Выполненное задание отправляйте на адрес m.lokshin@corp.mail.ru.
•    В теме письма должна присутствовать фраза [Олимпиада].
•    В письме должна быть информация об авторе программы — фамилия, имя, отчество, ВУЗ, курс/кафедра.
•    Приложите к письму исходный код и уже скомпилированную программу. Для уменьшения веса файлов допустимо использовать zip-архиватор.
Подведение итогов и награждение победителей состоится 13 декабря в 16:00 в конференц-зале главного учебного корпуса ВГУ на пленарном заседании  Международной научной конференции «Актуальные проблемы прикладной математики, информатики и механики».  
Победителей соревнования ждут подарки:
за 1 место — атмосферная настольная игра «Игра Престолов»;
за 2 место — дорожный набор, состоящий из удобного фирменного рюкзака, универсального зарядного устройства и кружки-термоса;
за 3 место — офисный набор, в который входят ручка, кружка, блокнот и USB-флеш-накопитель.
Желаем успехов!
Узнать о нас больше можно здесь: mail.ru, allods.mail.ru

up
  • 14 августа в 13.00 приглашаем вас на онлайн-встречу с деканом факультета ПММ

    Тема встречи: ориентировочные проходные баллы 2020 года.

    13.08.2020 подробнее >>
  • Поздравляем с 50-летним юбилеем Алексея Викторовича Ковалева!

    11.08.2020 подробнее >>
  • Уважаемые абитуриенты и их родители! 7 августа в 13.00 приглашаем вас на онлайн-встречу с деканом

    Темы встречи:
    1. Ориентировочные проходные баллы 2020 года;
    2. Дополнительные бюджетные места;
    3. Процедура зачисления.

    Встреча будет транслироваться на официальном youtube-канале ВГУ по ссылке : https://www.youtube.com/watch?v=6gds3jwBByA&featu.
    И в группе «Абитуриенты ВГУ»: https://vk.com/abitur_vsu

    В ходе встречи вы сможете задать интересующие вас вопросы о поступлении и процессе обучения на факультете.

    07.08.2020 подробнее >>
  • Выпуск семестрового курса проекта "Игросфера"

    17 июня в онлайн-режиме состоялось вручение сертификатов выпускникам семестровых курсов проекта «Игросфера». В числе лучших были и студенты Воронежского госуниверситета.

    ©Воронежский государственный университет. Все права защищены. При использовании материала ссылка обязательна.
    http://www.vsu.ru/ru/news/feed/2020/06/12548

    30.06.2020 подробнее >>
  • Летний Java-интенсив РЕЛЭКС

    Друзья!

    Мы рады сообщить, что прием заявок на летний Java-интенсив открыт!
    В этот раз наша IT-академия пройдет в онлайн формате.

    19.06.2020 подробнее >>
  • Летняя практика DataArt в 2020-м — в онлайн-формате.

    Заявки принимаем до 23 июня здесь: https://bit.ly/2YQ6R3H

    От технического английского и бизнес-анализа — до введения в Java и Machine Learning. Регистрируйтесь (разумеется, это бесплатно) и приходите: https://bit.ly/2YQ6R3H

    19.06.2020 подробнее >>
  • Вебинар о том, как математика, ML и AI помогают прогнозировать возникновение и развитие эпидемий.

    ВЕБИНАР! 23 июня наш AI-эксперт Антон Долгих проведет бесплатный вебинар «Эпидемиология и эпидемиологическое моделирование инфекционных заболеваний на примере вируса гриппа».

    О чем поговорим:

    Антон Долгих руководит IT-проектами в области здравоохранения (Healthcare and Life Sciences), которые ориентированы на работу с технологиями машинного обучения (ML) и искусственного интеллекта (AI). В своем докладе наш эксперт расскажет, как математика, ML и AI помогают прогнозировать возникновение и развитие эпидемий.

    Ежегодно в мире возникают и гаснут более 100 эпидемий. Но далеко не все они характеризуются высокой смертностью. Мы сфокусируемся на конкретном вирусе — вирусе гриппа:

    • Проследим за ним с макроскопического уровня до масштабов человеческой популяции.
    • Увидим, откуда он берется и почему так сложно с ним бороться.
    • Узнаем, как моделируют эпидемии, и почему это нужно делать.

    Будут уравнения. Даже дифференциальные. Но они впечатления от доклада не испортят, обещаем.

    Регистрация по ссылке:

    19.06.2020 подробнее >>
  • Первый летний PM Club! 25 июня в 19:30 наш эксперт Константин Волков

    «О развитии и картинах мира, или почему хорошие советы не работают».

    19.06.2020 подробнее >>
  • Нас ждёт Flutter Day, который мы проведём совместно с другими GDG-сообществами России.

    Дата: 25 июня, 19:00 GMT+3
    Место: Online

    Flutter Day Russia

    19.06.2020 подробнее >>
  • НЛМК-ИТ объявляет набор студентов технических направлений 3-го курса и старше в школу JavaScript

    19.06.2020 подробнее >>
  • Летняя школа Atos

    это пять дней лекций и мастер-классов от наших специалистов и партнеров из разных направлений и технологий. Они поделятся с вами своими знаниями и опытом, которые пригодятся вам в работе. Кроме того, это возможность поближе познакомиться с компанией #Atos и узнать о скиллах, которые помогут вам стать тем самым желанным кандидатом.

    19.06.2020 подробнее >>
  • 20 апреля online день открытых дверей факультета ПММ

    Трансляция начнется в 11 00 https://www.youtube.com/watch?v=J427NWCYFUg

    19.04.2020 подробнее >>
  • 15 апреля на 73-м году жизни скончался Коржов Евгений Николаевич

    Ушел из жизни Евгений Николаевич Коржов, доцент кафедры механики и компьютерного моделирования, кандидат физико-математических наук, всю свою трудовую жизнь отдавший Воронежскому госуниверситету. Евгений Николаевич - выпускник факультета прикладной математики и механики (ПММ). Еще в студенческие годы проявил интерес к научно-исследовательской работе, занимался математическими методами решения проблем механики жидкости и газа, сохранив свое увлечение до конца дней. Вместе с тем, Евгений Николаевич проявлял интерес к общественным процессам, все годы был активным участником и организатором факультетских и университетских мероприятий. В течение нескольких лет возглавлял университетскую комсомольскую организацию. С возникновением факультета прикладной математики и механики энергично поднимал студенческое отрядное движение, был первым комиссаром ССО «Союз», который вскоре стал флагманом отрядного движения в регионе. Евгений Николаевич – кавалер ордена Трудового Красного знамени, которым он был награжден за активную работу со студенческой молодежью.
    Евгений Николаевич – уважаемый коллега, надежный друг, неравнодушный к чужой беде человек. Уход его – серьезная утрата для факультета и университета. Коллеги выражают искренне соболезнование родным и близким Евгения Николаевича.

    15.04.2020 подробнее >>
  • Программа «Амбассадоры Mail.ru Group»

    11.04.2020 подробнее >>
  • Важная информация. Каникулы

    Каникулы с 28 марта 2020 по 05 апреля 2020.

    26.03.2020 подробнее >>
  • Внимание студентов! Переход на дистанционное обучение!

    В ближайшие несколько дней все курсы будут размещены на портале edu.vsu.ru, а студенты будут подписаны на соответствующие курсы.

    23.03.2020 подробнее >>
  • ВГУ выбран площадкой проведения олимпиады для школьников 8–11 классов по программированию «Технокубок».

    Состязание состоится на базе факультета прикладной математики, информатики и механики 1 марта. В стенах нашего университета соберутся лучшие юные программисты Центральной России.

    13.02.2020 подробнее >>
  • Заочный этап X олимпиады для школьников по информатике в ВГУ завершен.

    В очный этап будут допущены все участники, которые решили не менее двух задач (места 1-44) и предоставят информацию для включения в список участников очного этапа (логин, использованный в соревновании, ФИО, название учебного заведения, класс, контактный телефон и e-mail).

    08.02.2020 подробнее >>
  • 19 января пройдет день открытых дверей факультета ПММ!

    Начнется в 11:00 в главном учебном корпусе ВГУ ( Университетская пл. 1 ) , актовый зал.

    17.01.2020 подробнее >>
  • При поддержке компании Surf на ПММ открылась лаборатория программирования для мобильных устройств

    17.01.2020 подробнее >>
down
Close
Регистрация
*
Пожалуйста, представьтесь!
*
Укажите логин для авторизации!
*
Укажите Email для связи!
Пароль:
*
Пароль не менее 6-и символов!
Подтверждение пароля:
*
Пароль не менее 6-и символов!
* Поля, помеченные звездочками, обязательны для заполнения
вы:
если вы не бот то нажмите на картинкуТеперь можно зарегистрироваться
Close
Восстановить пароль


*
*
* Поля, помеченные звездочками, обязательны для заполнения
Наберите Логин и Email, указанные при регистрации на сайте.
После проверки соответствия, мы вышлем вам письмо с ссылкой на страницу восстановления пароля.
Close
Задайте новый пароль
Наберите проверочный код, указанный в письме!
Новый пароль:
Пароль не менее 6-и символов!
Подтверждение пароля:
Пароль не менее 6-и символов!
Наберите Логин и Email, указанные при регистрации на сайте, и проверочный код, присланный электронным письмом.
После этого задайте новый пароль (не менее 6-ти символов длинной).
Close
вход
Пароль:
Пароль не менее 6-и символов!