You sleep while we work: due to technical reasons Codeforces may be unavailable on May 22 on time interval 01:00-03:00 (MSK). ×

DPR-pavlin's blog

By DPR-pavlin, history, 15 months ago, In Russian,

Всем добрый день!

Меня зовут Филипп Рухович, и я являюсь членом жюри MIPT Problems Challenge 2018 — II конкурса задач по программированию, проводимого Центром Развития IT-образования МФТИ. В этом посте я хочу рассказать о том, что это за конкурс, что требуется сделать, чтобы поучаствовать в конкурсе, и какими качествами стоит наделить задачу, чтобы она могла претендовать на победу.

Что есть MIPT Problems Challenge 2018?

Это конкурс, в котором соревнуются не "решатели" задач, а их авторы. Победителем конкурса станет тот, кто подготовит лучшую задачу формата ACM ICPC.

Кто может участвовать в конкурсе? В конкурсе могут принять участие все желающие — никаких возрастных ограничений нет.

Что нужно, чтобы принять участие в конкурсе? Если вкратце, то необходимо придумать и полностью подготовить задачу формата ACM ICPC в системе Polygon. Более полные требования можно найти на страничке конкурса; там же можно найти и информацию о том, каким образом можно поучаствовать в конкурсе, каковы дедлайны и т.п.

Есть ли какие-либо призы? Да, три лучшие задачи конкурса будут награждены призами (подробности — на все той же страничке конкурса). Помимо этого, авторы других задач также могут выиграть денежное вознаграждение (об этом ниже).

Будут ли задачи даны в каком-то из контестов? Да, три задачи-победителя конкурса, а также, возможно, некоторые другие задачи-участники (на усмотрение жюри) будут даны в личном туре MosCode Festival 2018, который пройдет 31 марта.

Какие задачи имеют шансы на успех? В первую очередь, задача должна быть новой. Задачи, которые уже встречались на других соревнованиях, не могут претендовать на победу. Как следствие, задача не должна быть известна никому, кроме ее автора/группы авторов. Во-вторых, важным критерием является интересность задачи. А именно, хорошие шансы имеют задачи, для решения которых необходимо придумать и реализовать какие-то нестандартные, незаезженные идеи и ходы. Третьим важным критерием является красота задачи. Конечно, понятие красоты субъективно (равно как и интересность), но на жюри обязательно произведет впечатление задача, процесс решения которой принесет эстетическое удовольствие :))).

Также хочется обратить внимание на то обстоятельство, что для победы задача не обязана быть сложной. Скорее наоборот, относительно несложная задача с красивой неожиданной идеей имеет больше шансов на победу, нежели сложное упражнение на известные сложные и не очень алгоритмы. Конечно, в решении задачи может использоваться стандартный алгоритм; но при этом в задаче должна быть и какая-то свежая, интересная идея. Более того, так как задачи могут быть использованы в личном туре, то чем больше разных задач, тем лучше)))

Можно ли подготовить для конкурса несколько задач? Да; более того, в этом случае каждая задача участвует в конкурсе независимо, и любое количество задач одного автора может войти в контест.

Каковы авторски-правовые особенности работы с задачами?

1) Задачи, присланные автором для участия в конкурсе, могут быть использованы в личном туре MosCode Festival; как следствие,
автор, прислав задачу, автоматически дает свое согласие на иcпользование задачи в MosCode Festival;

2) Задача может войти в личный тур MosCode Festival, не ставши призером конкурса. В этом случае, автору полагается денежное вознаграждение.

3) Если хотя бы одна задача вошла в личный тур MosCode Festival, то ее автор лишается права участия в этом контесте (но не в командном туре!), если такое право у автора было.

4) Если задача не вошла в личный тур MosCode Festival, то задача и все права на нее возвращаются автору. Жюри гарантирует неразглашение задачи, в силу чего задача может быть использована на других состязаниях (однако если задача, скажем, войдет в раунд на codeforces, то настоятельно просим предупредить об это жюри, чтобы его члены не участвовали в раунде))) ).

5) Если автор имеет право участвовать в MosCode Festival, и ни одна из задач автора не вошла в личный тур MosCode Festival, то автор имеет право поучаствовать в личном тур MosCode Festival.

Если мою задачу не взяли в контест, значит ли это, что задача проиграла в борьбе за лучшую задачу всем задачам, вошедшим в контест? Не совсем — это означает лишь, что задача уступила в борьбе за призовые места; в контест же задача могла не войти и по иным причинам, типа баланса сложности, перекрытия по темам и т.п.; в частности, по подобным причинам в прошлом году в контест не попала задача, которая, по-видимому, заняла бы в конкурсе четвертое место, если бы такое было)))

Каковы дедлайны? Задачу нужно прислать не позднее 17 марта 2018, 23:59. Победители конкурса будут объявлены не позднее 24 марта. Тогда же авторы получат сообщения о том, какие их задачи вошли/не вошли в контест и выиграли призы.

В Фестивале примут участие сильные ребята, уровня победителей/призеров ACM ICPC, NEERC и т.п. Значит ли это, что автором задач может стать лишь такой же по силе спортивный программист? Ни в коем случае! Конечно, опыт в олимпиадах может помочь; однако как показывает практика, даже относительный новичок в спортивном программировании, не имеющий больших успехов в ACM ICPC и/или высоких CF/TC/atcoder/csacademy/...-рейтингов, может придумывать задачки, над которыми с удовольствием поломают голову сильнейшие спортивные программисты мира. Попробуйте свои силы в придумывании задач — и тогда вы, возможно, станете автором задачи, которая определит новое направление в теории СП (в 2000 году, например, такой была задача "Симпатичные узоры" (ВКОШП 2000, задача Е), которая теперь является одной из базовых задач по теме "Динамическое программирование по профилю"), или автором задачи с простой идеей, до которой почему-то не додумалось подавляющее большинство участников, или автором задачи, над которой ваш друг и/или один из известнейших олимпиадников страны надолго зависнет, посылая 25 неверных решений одно за одним)))

Если есть еще какие-то вопросы по Конкурсу, то их можно задать в комментариях к посту либо напрямую мне, Филиппу Руховичу, в ВК: https://vk.com/dprpavlin .

Всем удачи!

Read more »

 
 
 
 
  • Vote: I like it  
  • +13
  • Vote: I do not like it  

By DPR-pavlin, history, 18 months ago, In Russian,

Всем добрый день!

Меня зовут Филипп Рухович, и я являюсь методистом отделения информатики Олимпиадных школ МФТИ, проводимых Центром Развития ИТ-образования МФТИ. Проект Школ существует на Физтехе с 2013 года, и основной его целью является подготовка детей к олимпиадам. В этом году Зимняя Олимпиадная школа пройдёт на базе кампуса МФТИ с 4 по 14 января, и с 2 по 7 января в Казани, на базе КФУ.

В школе существует множество направлений, одно из них — информатика, программой которого я занимаюсь. В этом посте мне бы хотелось рассказать пользователям codeforces.com о своем курсе.

На направлении информатики существуют четыре группы разных уровней:

1) Группа С ("Си") направления "Математика + Информатика". Эта группа подойдет для новичков, которые еще не умеют программировать. Входных знаний не предполагается, необходимо пройти тестирование по математике.

2) Группа “Алго” направления "Математика + Информатика". В этой группе проходить обучение стоит тем, кто владеет базовыми операторами, циклами и функциями языка С/C++ и/или любого другого распространенного языка программирования (Pascal/Delphi, Java, Python), но еще не имеет опыта решения задач по спортивному программированию. Здесь вы изучите основы динамического программирования, основы модульной арифметики и теории чисел, основы вычислительной геометрии, основы теории графов, а также базовые алгоритмы, применяемые в олимпиадах. Для прохождения в группу “Алго” необходимо сдать тестирование по математике и информатике.

3) Группа "Информатика Профи" одноименного направления. Группа подойдет ребятам, которые владеют базовыми алгоритмами и уже имеют успешный опыт участия в олимпиадах. На занятиях изучаются продвинутые алгоритмы, динамическое программирование на подотрезках и по профилю, поиск минимального остовного дерева, деревья отрезков, базовые алгоритмы на строках (z-функция, префикс-функция, хэширование подстрок, бор). Для поступления в эту группу нужно проходить тестирование по информатике и математике.

4) Группа "Информатика Hard" направления "Информатика Профи" будет интересна тем, кто добился внушительных успехов в спортивном программировании (например, призер или победитель Всероссийской олимпиады, Открытой олимпиады школьников и т.д.). На занятиях упор будет делаться на практику решения большого количества задач как школьного, так и студенческого уровня. Для попадания в группу нужно пройти тестирование по информатике и математике.

Таковы особенности каждого направления в отдельности; а теперь рассмотрим, что же у них общего:

а) Задания. Вне зависимости от группы, которую вы выберете, вы будете решать большое количество задач;

б) "Дорешка". Задания можно решать не только во время непосредственно практических занятий, но и в любое время (кроме ночи, разумеется :) ). При этом вы можете дорешивать не только в общежитии, но и там, где проводились занятия. Более того, в это время в аудитории находится преподаватель (а чаще всего, и не один); ему можно задавать любые вопросы как по пройденному материалу, так и по другим темам; в частности, можно попросить разъяснить/повторить непонятные моменты в лекциях или помочь сдвинуться с мертвой точки при попытке решить задачу.

в) Гибкость программы. Программа обучения составляется на основании результатов вступительного тестирования: мы оцениваем знания будущих учеников Школы и вносим соответствующие коррективы в план занятий.

г) Олимпиада. На Школе традиционно проводится олимпиада по информатике. С 2017 года правила олимпиады приближены к правилам Всероссийской олимпиады школьников, что дает возможность потренироваться.

д) Требовательные, но при этом отзывчивые преподаватели (это верно для всех отделений Школы :) ).

е) Развлечения. На Школе есть как спортивные, так и вечерние мероприятия (вечера настольных игр, "Что? Где? Когда?" и многое другое), и конечно, научно-популярные лекции.

Чтобы попасть на отделение информатики Зимней Олимпиадной школы, нужно до 10 декабря пройти тестирование по информатике (кроме группы С) и математике. Подробную информацию о том, как это сделать, можно найти на сайте. Ниже я расскажу о тестировании.

Тестирование представляет собой контест из 13 задач; каждую из этих задач нужно сдать в тестирующую систему. Решение признается верным, если и только если оно прошло все тесты; в этом случае, решение получает вердикт ОК. Сложность задач варьируется: самые легкие задачи предназначены для начинающих, поступающих в группу Алго; самые сложные задачи предназначены уже для поступающих в группу "Информатика Hard". Задачи можно решать в течение нескольких дней — дедлайном является время окончания тестирования. Однако как показывает практика, для поступления на желаемую (практически любую) параллель не обязательно решать все задачи. Тем не менее, рекомендуем решить как можно больше задач — это покажет ваш уровень знаний и целеустремленность. Задачи в контесте примерно упорядочены по сложности; тем не менее, может так оказаться, что следующая задача лично для вас окажется легче предыдущей. Поэтому обязательно читайте и пробуйте решать все задачи (к тому же на реальной олимпиаде, в условиях нехватки времени, очень большую службу может сослужить чтение всех задач и планирование своих действий).

Увидимся на школе!

Read more »

 
 
 
 
  • Vote: I like it  
  • +33
  • Vote: I do not like it