Отчет об участии в Международном турнире по информатике в Болгарии в 2014 году Отчет подготовлен руководителем сборной команды России – Цветковой М.С. Международный турнир по информатике в Болгарии проводился в городе Шумен 21-23 ноября 2014 года. Программа мероприятия включает: 20 ноября – заезд зарубежных делегаций, встреча в аэропорту Варны, трансфер в Шумен. Регистрация. Расселение. 21 ноября – заезд болгарских участников. Открытие, знакомство с залом состязаний и рабочими местами. Перевод задач тренерами зарубежных делегаций. 22 ноября – тур. Подведение итогов. Разбор задач. Апелляции. 23 ноября –Награждение. Свободное время. Отъезд болгарских участников. 24 ноября - отъезд зарубежных делегаций трансфер в аэропорт Варны. Условия проведения турнира В 2014 году турнир проходил с 21 по 23 ноября с учетом дня заезда и дня отъезда 20 и 24 ноября соответственно. Участие в турнире обеспечивается на основе официального приглашения от Болгарии (приложение 1). Традиционно в этом турнире принимают участие две группы участников – школьники 11-12 классов (старшая лига) и школьники до 10 класса – лига юниоров. Каждая страна-участница может направляет несколько команд. Каждая команда может включать не более 4 участников старших классов и 4-х участников до 15 полных лет. На основе этого приглашения руководитель команды обеспечивает необходимые документы для поездки команды, состав которой утвержден на основе протокола Центральной предметнометодической комиссией по информатике. Принимающая сторона обеспечивает трансфер Варна-Шумен и обратно, размещение в отеле, питание с учетом оплаты ежедневного оргвзноса на установленные услуги в объеме 29 евро на человека для участников и 37 евро на человека для руководителей делегации. Размещение и трехразовое питание (шведский стол) в гостинице повышенной комфортности Гранд Отель «Шумен» обеспечивает удобное пребывание, шаговую доступность до места проведения состязаний. Местом проведения состязаний является одна из старейших школ Болгарии, которая специализируется в области математики, физики и информатики: Естественно-математическая гимназия имени Нанчо Поповича. Состав участников турнира старшей лиги Группа старшей лиги включила 73 участника из Болгарии, России, России (Татарстан), Румынии. Сайт состязания: http://www.math.bas.bg/keleved/shumen2014 На сайте представлен состав участников, тексты задач ,архив тестов для системы оценивания архив решений участников старшей лиги и юниоров. INTERNATIONAL TOURNAMENT IN INFORMATICS 21-23 November 2014, Shumen, Bulgaria International Participants Romanian Official Leaders: Daniela Lica, Doru Popescu Anastasiu, Ciprian Cheşcă, Cristina Iordaiche. Junior: Alexandru Petrescu Bogdan Sitaru Adrian-Cătălin Badea Denis Banu Senior: Andrei Heidelbacher Rareş-Darius Buhai Alexandru Velea Mihai Gheorghe Romania 1 (International Computer High School of Bucharest) Leaders: Costin Banu, Daniel Posdărăscu Junior: Ioan Andrei Nicolae Laura Georgescu Adelina Enache Anca Anghel Andrei Eftime Tudor Enescu Bogdan Mucenic Felix Pușcașu Senior: Valentin Hârșan Tiberiu Marin Casian Pătrășcanu Andrei Constantinescu Bogdan Dobre Marius Gavrilescu Darius Marian Andrei Stanciu Romania 2 ("Ion Luca Caragiale" High School) Leaders: Ionete Sanziana, Manea Theodora Junior: Tudose Alexa Maria Savulescu Stefan Niculae Alexandru Vlad Draghici Delia Senior: Tudor Costin Razvan Nicolescu Razvan Copaciu Tiberiu Savu Mihnea Romania 3 (Spiru Haret National High-School in Bucharest) Leader: Marin Teodor Bogdan Senior: Sava Patrick Catalin Alexandru Petrovici Constantin Andrei Preda Armand Alexandru Barbuta Andrei Romania 4 ("Fraţii Buzeşti" National College, Craiova) Leader: Marius Nicoli Senior: Denis Gabriel Mită Ioan-Bogdan Iordache Dan-Bogdan Beldea Miriam Adriana Costan Romania 5 (Computer Sciences al Dinicu Golescu High School) Leaders: Teodora Diana Dumitrascu, Octavian Dumitrascu Junior: Binica Nicolae Marinescu Sebastian Dutulescu Andreea Irimia Rares Senior: Oncescu Costin Andrei Necula Onisim Olteanu Vlad Tircomnicu Nicoleta Romania 6 ("Tudor Vianu" National High School of Computer Science) Leaders: Victor-Claudiu Manz, GeorgeMihai Trifan Juniors: Bogdan Cretu Stefan Enescu Andrei Draghici Andreea Cella Florescu Anastasia Zloteanu Andreea Zaharia Livia Magureanu Vlad-Cristian Panait Seniors: Paul-Andrei Gramatovici Florin Chirica Smaranda Dinu Teodor Stelian Ionescu Alexandru Valeanu Petru-Eric Stavarache Alexandru Pascadi Diana-Elena Ghinea Russia 1 Leaders: Kuznetcova Marina, Andreev Roman. Senior: Ipatov Mikhail, Makeev Vladislav, Pavlov Ilia, Veselov Ivan. Russia 2 Leaders: Mikhailin Sergei, Shveykina Marina Junior: Sakhabiev Askhat, Kidrachev Albert Senior: Muravev Kirill, Zakharov Dmitrii, Korchagin Maksim, Nugmanov Marat А также большая группа болгарских школьников. Порядок проведения турнира Турнир проводится как открытый Международный турнир в рамках проведения ежегодного национального турнира по информатике Болгарии. В работе научного комитета, ,разрабатывающего задания этого турнира ,принимают участие специалисты ведущих университетов Болгарии, который тренируют национальную сборную команду Болгарии. Болгария была первой страной, которая открыла проведение IOI в мире в 1989 году. Таким образом, именно Болгария задала контекст Международной олимпиады по информатике. Содержание, форма проведения значительно изменились и модернизировались за четверть века проведения IOI, Болгария традиционно входит в десятку стран- лидеров Международной олимпиады по информатике (IOI), что обеспечивает очень высокий уровень качества для тренировки членов международной сборной. В 2009 году Болгария вновь стала страной, проводящей IOI. Среди абсолютных чемпионов IOI за 26 лет есть и представители Болгарии. Российская Федерация принимает участие в этом турнире с 2012 года в лице команды из Республики Татарстан – как места проведения IOI в 2016 году. Такое участие команды из Республики Татарстан предусмотрено как возможность получить опыт для уровня подготовки к IOI, так как в 2016 году помимо официальной сборной команды России, которая формируется в системе учебно-тренировочных сборов, ,организованных Минобрнауки России, стороне – проводящей IOI предоставляется возможность выставить вторую команду (это будет команда школьников Татарстана) вне конкурса. Опыт участия команды Татарстана показал очень высокий уровень сложности заданий турнира. Это определило выбор Центральной предметнометодической комиссией участие в этом турнире членов учебнотренировочных сборов по информатике для дополнительной подготовки к Международной олимпиаде по информатике. Впервые команда из состава кандидатов в сборную команду России приняла участие в данном турнире в 2013 году с высшим результатом – абсолютным чемпионом турнира. Результаты участия российской команды в 2014 году Команда включала 4 школьника и двух руководителей команды. ФИО Название образовательного учреждения Класс Веселов Иван Дмитриевич Муниципальное бюджетное общеобразовательное учреждение лицей № 83 Орджоникидзевского района городского округа город Уфа Республики Башкортостан, Республика Башкортостан 11 Ипатов Михаил Михайлович Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Московский государственный университет имени М.В. Ломоносова», Москва 11 Макеев Владислав Владиславович Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Московский государственный университет имени М.В. Ломоносова», Москва 10 Павлов Илья Владимирович Муниципальное бюджетное общеобразовательное учреждение «Средняя общеобразовательная школа № 6» г. Мытищи, Московская область 11 На фотографиях ниже показаны рабочие места наших участников в зале состязаний. Макеев Владислав Владиславович Павлов Илья Владимирович Веселов Иван Дмитриевич Ипатов Михаил Михайлович Отбор участников из состава кандидатов в сборную команду России по информатике для участия в IOI, процедура отбора и тренинг с участниками Международного турнира по информатике в Болгарии подробно описан в отчет по установочным сборам сборной команды России по информатике. Педагогический руководитель команды - Кузнецова Марина Вячеславовна – заместитель директора Координационно-информационного центра ФГАОУ АПК и ППРО (Академии), тренер-руководитель – Андреев Роман Вальерьевич, обучающийся Санкт-Петербургского государственного университета, призер IOI 2011 года. Педагогический руководитель команды обеспечивает логистику поездки делегации, готовит сопроводительные документы, берет на себя ответственность за детей. Тренер-руководитель участвует в работе в составе международной ассамблеи тренеров, которая обеспечивает перевод текстов задач на русский язык за сутки до турнира, находясь в состоянии карантина по отношению к детям. По итогам состязания тренер команды проводит с участниками команды разбор задач. На турнире предусмотрен один тур, ,на который предложено 3 задачи, каждая задача оценивается из 100 баллов. Максимальный балл, который может набрать участник, решивший все задачи, составляет 300 баллов. Продолжительность тура традиционно, как и на IOI составляет 5 астрономических часов. Всего в старшей лиге для 73 участников разыгрывались 15 медалей. Из них только 3 золотые медали победителей турнира, а также 5 серебряных и 7 бронзовых медалей призеров турнира. Это определило высокий накал борьбы за победу. Сложность задач можно оценить по результатам участников в таблице. Из таблицы видно, что только наши российские участники смогли набрать баллы, обеспечивающие статус победителей (золотые медали). При этом абсолютным чемпионом стал также российский школьник – Макеев Владислав, 10 класс. Москва ,СУНЦ МГУ. Макеев Владислав по возрасту мог принять участие в лиге юниоров, но выступал за старшую лигу, показал абсолютный результат, причем за 3 часа вместо 5 часов отведенных на тур. Это выдающийся результат турнира. Результат выступления нашей сборной самый лучший на турнире – три победителя (золотые медали) и призер (бронзовая медаль). Бронзовый призер .Веселов Иван (Уфа ,11 класс) – крайний справа. Основными соперниками российской сборной были школьники сборной команды IOI из Румынии (4-й результат) и Болгарии (5-8 результат ). Раздел 2. Задачи старшей лиги. ЗАДАЧА A1. Муравьи Муравьиная страна расширяется. Как и любая другая порядочная страна, она состоит из городов. Как только в одном из старых городов происходит перенаселение, недовольные этим муравьи образуют новый город и переселяются в него, таким образом стабилизируя ситуацию в старом городе. Изначально в муравьиной стране был всего один город. Издревле положено, чтобы каждый муравьиный город состоял из ровно M муравейников, пронумерованных целыми числами от 1 до M. Также мы знаем изначальные размеры муравейников в первом городе. Муравьи возводят новые города вместе с муравейниками мгновенно. Так как муравьи чтят традиции, то каждый новый город изначально является полной копией их прошлого. То есть размер первого муравейника нового города будет совпадать с размером первого муравейника старого города, аналогично со всеми остальными. Но после возведения нового города приходят муравьи- инноваторы и увеличивают размеры жилищ с номерами с L до R включительно, на некоторое число V. После этого престижным объявляется квартал, состоящий из муравейников с номерами от i до j включительно, причем муравей-мэр нового города хочет немедленно узнавать, сколько муравьев можно поселить в этот престижный квартал. Так как муравьи не сильны в подсчетах, то они попросили вас помочь им с этой нелегкой задачей. Формат входных данных В первой строке заданы два целых числа N и M – число городов в муравьиной стране после возведения всех городов и число муравейников в каждом из городов соответственно. Во второй строке содержаться M целых чисел A1, A2, A3, …, AM – размеры муравейников в первом городе. Следующие N - 1 строк содержат историю основания муравьиных городов, каждый новый город описывается шестеркой целых чисел P, X, Y, V, Z, T. P соответствует номеру города из которого получился новый. Каждый новый город получает в качестве номера минимальное натуральное число, которое еще не было использовано в качестве номера города. Числа L, R, i, j, описанные выше, получаются следующим образом: L = ((X + S) mod M) + 1; R = ((Y + S) mod M) + 1 i = ((Z + S) mod M) + 1; j = ((T + S) mod M) + 1 Изначально S равно 0, а после построения нового города оно становится равно суммарной вместительности престижного квартала в этом городе. Как видно из формулы, это число будет использовано при генерации следующего запроса. Гарантируется, что верно вычисленные числа будут удовлетворять ограничениям: L ≤ R и i ≤ j. Формат выходных данных Для каждого из новых городов выводите по строчке, содержащей ровно одно целое число – вместимость престижного квартала. Ограничения 1 ≤ N, M ≤ 100000 0 ≤ Ai, V ≤ 100000 для 1 ≤ i ≤ M. 1 ≤ L ≤ R ≤ M. 1 ≤ i ≤ j ≤ M. 0 ≤ X, Y, Z, T < M Пример Ввод Вывод 44 9 3675 12 123101 45 212622 102803 Пояснение к примеру В первом городе размеры зданий равны {3, 6, 7, 5}. При создании второго мы получаем S = 0, L = 3, R = 4, V = 1, i = 1, j = 2. Таким образов второй город выглядит так: {3, 6, 8, 6}, а размер престижного квартала равен 3 + 6 = 9. После этого шага S = 9. Для третьего города вычисляем L = ((1 + 9) mod 4) + 1 = 3, R = 4, i = ((2 + 9) mod 4) + 1 = 4, j = 4; V = 6. Размеры муравейников третьего города будут равны {3, 6, 14, 12}. Размер престижного квартала 12, поэтому теперь S = 12. Четвертый город получился из первого с помощью S = 12, мы вычисляем L = 1, R = 3, i = 1, j = 4. V = 8. Для него размеры равны {11, 14, 15, 5}, а престижный квартал получился размера 45. Система оценки Вы получите не менее 10% очков, если ваша программа будет работать для ограничений N, M ≤ 1000. Вы получите не менее 30% очков, если ваша программа будет работать для случая, когда каждый следующий город будет образован от города, основанного на прошлом шаге (для первого запроса таким будет первый город). ЗАДАЧА A2. AB-СЛОВА Назовем AB-словом строку, состоящую из букв А или B, длины хотя бы два, начинающуюся с буквы А. Также определим два преобразования для таких строк: R1: Все буквы кроме последней остаются без изменений, а последняя меняется на противоположную: А становится B, а B становится A. R2: Обозначим исходное слово за w. Тогда мы строим строку t из w следующим образом: - Первая буква t – это конечно же A. - Каждая следующая буква на позиции i (i > 1) ti получается так: если wi-1 = wi, то ti = B, иначе ti = A. - Результатом нашей операции будет строка t. Назовем последовательность из N последовательных применений операций R1 и R2 к исходной строке w корректной, если: - В конце мы получим тоже самое слово, что было у нас в начале (w); - Все слова, полученные в процессе преобразований попарно различны. Вам дано одно положительное число N. Вам требуется написать программу, которая находит кратчайшее AB-слово для которого существует корректная последовательность из N операций, или установите, что такой строки не существует. Формат входных данных - Единственная строка содержит число 2 ≤ N ≤ 100 000. Формат выходных данных Ваша программа должна выводить: - На первой строке кратчайшее AB-слово; - Вторая строка должна состоять из N символов 1 или 2 без разделителей, описывающих корректную последовательность преобразований. Или - Единственное слово NO, если ответа не существует. Ограничения - В 20% тестов N не превосходит 30; - В 40% тестов N не превосходит 200; - В 70% тестов N не превосходит 10 000; Пример Ввод Вывод 6 AABB 221212 Пояснение к примеру AABB ABAB AAAA AAAB ABBA ABBB AABB Система оценки - Если верно определено несуществование ответа, то вы получите все баллы за этот тест; Иначе - Если первая строка не содержит AB-слова, или выданная вами последовательность преобразований не является корректной, то вы не получите баллов за этот тест; Иначе - Вы получите такой процент баллов от этого теста, на сколько ваше решение близко к оптимальному. ЗАДАЧА A3. Окно Квадратная стена размером N x N выложена из N2 / 2 кирпичей, плотно приложенных друг к другу (N четно). Каждый кирпич размером 2 x 1. Кирпичи пронумерованы целым числами от 1 до N2 / 2. Некоторые кирпичи расположены горизонтально, а некоторые вертикально. В стене нет дыр. На рисунке ниже показан пример такой стены при N = 6, квадраты с одинаковыми номерами соответствуют кирпичу с таким же номером. В стене-то дыр нет, но мы очень хотим сделать одну под окно, причем удовлетворяющую следующим условиям: 1) Дыра должна быть квадратной. 2) Ее стороны должны быть параллельны сторонам стены. 3) Она не должна касаться сторон стены, то есть лежать строго внутри. 4) Мы хотим, чтобы при создании дыры ни один кирпич не пострадал, то есть стороны дыры должны проходить только по сторонам кирпичей. Вам требуется написать программу, которая находит максимальный размер дыры, которую мы можем сделать при данных ограничениях, ведь чем больше дыра – тем больше размер окна, а маленькие окна никому не нужны. Гарантируется, что всегда можно сделать хотя бы одно окно. Формат входных данных Первая строка содержит единственное целое число N – ширину стены. Следующие N строк содержат описание стены в таком же формате, как описано выше. Формат выходных данных В единственной строке выведите три числа – ширину максимальной дыры и координаты ее левого верхнего угла. Если правильных ответов несколько, то разрешается выводить любой из них. Пример (соответствует картинке выше) Ввод Вывод 6 232 1 1 4 4 13 14 2 3 3 5 13 14 2 6 7 5 12 12 9 6 7 10 10 15 9 8 8 11 11 15 16 16 17 17 18 18 Пояснение к примеру: Существует два ответа: либо вырезать кирпичи с номерами 6 и 7, либо с номерами 10 и 11. Система оценки Подзадача 1 (15 баллов): 4 ≤ N ≤ 100. Подзадача 2 (35 баллов): 100 < N ≤ 1000. Подзадача 3 (50 баллов): 1000 < N ≤ 2000. Вы получите баллы за подзадачу только в том случае, если вы пройдете все соответствующие ей тесты.