27 ноября 2016 в 12:00 состоится заочный тур Открытой олимпиады по программированию Национального Исследовательского Технологического Университета «МИСиС», МФТИ и Cognitive Technologies. В этом году олимпиада впервые вошла во всероссийский перечень олимпиад школьников и является олимпиадой второго уровня. Призеры и победители данной олимпиады получают возможность поступить без экзаменов в НИТУ «МИСиС», а также в ряд других ВУЗов. Олимпиада проводится совместно с МФТИ.
Заочный тур олимпиады будет оцениваться по правилам ACM ICPC. Все участники пишут индивидуально. Длительность тура 5 часов. К участию приглашаются школьники 7-11 классов.
Лучшие участники будут приглашены в Москву на очный тур олимпиады, который состоится 15 января 2017 года. Очный тур будет проводиться на 2 двух площадках: НИТУ «МИСиС» и МФТИ. Организаторы берут на себя расходы, связанные с проживанием иногородних участников (общежития при университетах). Победителям очного тура будут вручены ценные призы.
Для участия в олимпиаде необходимо пройти регистрацию на https://goo.gl/HZiu3D до 24 ноября 2016.
В этом году заочный тур Открытой олимпиады по программированию НИТУ«МИСиС», МФТИ и Cognitive Technologies является и одним из отборочных туров на Зимнюю компьютерную школу МФТИ (http://it-edu.mipt.ru/ru/zksh2017), которая пройдет с 27 февраля по 8 марта 2017 года.
Для того, чтобы ваши результаты были зачтены как результаты второго отборочного тура в ЗКШ, вам необходимо:
- пройти регистрацию на ЗКШ (https://goo.gl/hIG7b1)
- в одной из задач контеста (там, где вас явно попросят это сделать) указать электронную почту, которую вы использовали при регистрации на ЗКШ.
Официальная страница олимпиады http://acm.misis.ru/olymp2017
Посмотреть задачи прошлого года можно здесь: http://mirror.codeforces.com/gym/100957
Тем кто прошел в ЗКШ нужно писать отборочный на МИСИС? В прошлом году можно было писать и без отбора.
Нужно. В этом году олимпиада не пересекается с ЗКШ.
Автокомментарий: текст был обновлен пользователем misis (предыдущая версия, новая версия, сравнить).
А вроде отбор пересекается с отбором зкш!
Автокомментарий: текст был обновлен пользователем misis (предыдущая версия, новая версия, сравнить).
Здравствуйте.
Так как дата заочного тура олимпиады ( 27 ноября 2016 ) приближается, может ли кто-нибудь опубликовать ссылку для входа в систему Олимпиады. В систему куда можно войти используя соответствующие логины и пароли, получить задачи Олимпиады и отправить их на проверку.
Большое спасибо.
Здравствуйте!
Ближе к началу этапа всем участникам придут письма, содержащие все необходимые данные (ссылки для входа систему, логины, пароли и т.д.)
Почему-то мне эти данные не пришли, хотя я регистрировался
Письма были разосланы. На случай, если Вам что-то не пришло, была вывешена инструкция на сайте. Также мы отвечали на сообщения, отправленные на ящики, указанные на сайте. Жюри, очень сожалеет, что возникла такая ситуация.
Олимпиада МИСИС пересекается с очным туром олимпиады по математики и криптографии. Не планируется ли второго отборочного тура?
Здравствуйте! Нет, не планируется.
запланируйте, пожалуйста :)
жиза, а то закрывать регистрацию на олимпу за 3 дня как-то не тру
Где-нибудь можно найти списки зарегистрировавшихся?
Нет, список найти нельзя, но если есть неуверенность, что регистрация прошла успешно, можно написать письмо с просьбой проверить.
Украине тоже пересекается с другими олимпиадами :( Длительность олимпиады два часа? И может всё-таки проведёте 2 тура?
Длительность тура 5 часов. 2-го тура не будет.
Спасибо! А стоимость задачи зависит от времени отправки?
Олимпиада проводится по правилам ACM ICPC. Место участника определяется количеством решенных задач и общим штрафом за все задачи. Время отправки задачи влияет на общий штраф.
Мне так и не прислали логин и пароль...
Напиши на одну из почт, указанных в объявлении. Мы пришлем.
Монитор соревнования: https://contest.yandex.ru/contest/3468/standings/
Когда разморозят результаты заочного тура?
UPD: кажется, разморозили.
А J решается без хеширования?
Да, я написал детерминированное решение. Давайте каждому поддереву поставим в соответствие некоторое число так, что изоморфным поддеревьям достанутся одинаковые числа, а неизоморфным — разные. Сделать это для вершины v можно так. Сперва давайте рекурсивно занумеруем детей и сохраним их номера в какой-нибудь вектор. Теперь, если два поддерева изоморфны, то значения в их корне равны, как и отсортированные списки номеров детей. Поэтому, если раньше нам когда-либо встречалось поддерево, имеющее то же число в корне и номера сыновей, как и в нашем текущем поддереве, то ему поставим в соответствии тот же номер, а если нет — то новый номер, который не встречался ранее. В конце, если у нас есть х поддеревьев с каким-то номером y, то добавим к ответу x(x-1)/2
Наверное, с кодом будет попонятнее :)
Спасибо)
Эх, не подумал я, что можно сами вектора сравнивать, а не хеши.
A: я написал монте-карло, посмотрел погрешность, расстроился, и на этом мое участие в контесте закончилось. Надеюсь, в авторском решении что-то красивое, а не какой-то дикий разбор случаев.
B: посчитаем массив, в i-й позиции которого будет храниться, сколько таких же символов есть слева от i. Переберём позицию первого символа строки-ответа и будем пытаться увеличивать длину (1, 3, 6, 10...), делая проверки с помощью посчитанного массива. Можно увидеть, что суммарно увеличений будет в худшем случае O(N1.5).
C: либо свести задачу к ниму, либо написать простую динамику (у числа n будет максимум несколько тысяч делителей).
D: простая двумерная динамика. Её почему-то поздно заметили и начали сдавать уже ближе к концу второго часа.
E: стандартная задача на сканирующую прямую.
F: найти самый длинный отрезок, состоящий из нулей.
G: бинарный поиск по ответу и проверка существования пути (с помощью bfs, dfs, dsu etc.).
H: можно свести задачу к нахождению числа сочетаний с повторениями: допустим, максимальная мощность множества равна l, тогда нам нужно "распределить" (n - k·(l - 1)) увеличений по l отрезкам (или что-то такое).
I: внимательно перечитать условие и заметить, что нам подходят любые множества из шести чисел, которые можно разделить на пары равных. Это уже решается динамикой.
J: нужно как-то уметь однозначно считать хэш поддерева. Ответ равен числу совпадений хэшей. У меня для этого был dfs с подобным смыслом:
Отсортируем всех детей текущей вершины v в порядке увеличения их хэшей (u1, ..., um).
hv = cv + hu1·k + hu2·k1 + size(u1) + hu3·k1 + size(u1) + size(u2) ... и так далее. k – некая константа, size(v) обозначает размер поддерева v, hv – искомый хэш.
Если делать операции по достаточно большому модулю (264, например), то шанс коллизии очень мал.
В G можно было обойтись без бинпоиска. Отсортируем ребра по невозрастанию и будем добавлять их по одному в DSU, пока A и B не окажутся в одной компоненте связности.
Также в G можно было написать дейкстру, где мы кидаем в кучу и храним в ответе не длину пути, а минимальное по весу ребро на пути
чет на пятом тесте wa в I
Значит проблемы с модулями и переполнением. У меня тоже такое было, потом нашел глупый баг.
Да, нашел. Забыл, что нельзя брать по модулю а потом просто делить. Спасибо)
Скажите пожалуйста.
1) Сколько участников проходят в финал Олимпиады?
2) Где можно найти список прошедших на очный тур?
Спасибо.
Информации про это пока нет http://acm.misis.ru/2016/11/27/%D1%80%D0%B5%D0%B7%D1%83%D0%BB%D1%8C%D1%82%D0%B0%D1%82%D1%8B-%D0%B7%D0%B0%D0%BE%D1%87%D0%BD%D0%BE%D0%B3%D0%BE-%D1%82%D1%83%D1%80%D0%B0/
Появилась инфа о том, кто прошел на очный этап. http://acm.misis.ru/2016/12/01/%D0%B8%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%86%D0%B8%D1%8F-%D0%BE-%D0%BF%D1%80%D0%BE%D1%88%D0%B5%D0%B4%D1%88%D0%B8%D1%85-%D0%BD%D0%B0-%D0%BE%D1%87%D0%BD%D1%8B%D0%B9-%D1%82%D1%83%D1%80-%D0%BE%D0%BB/