Всем привет.
Хочу описать небольшую историю моего участия и проблемы олимпиады со своей точки зрения.
Олимпиада была в четыре дня (сразу скажу, что стоило сократить это время):
День 1.
Приехали ночью на вокзал. Дошли пешком до профилактория "Ивушка", где нам сказали что мест нет (хотя мы бронировали). Оказалось в это время как раз в городе проходило какое-то спортивное мероприятие, и ещё танцевальные турниры, как следствие у всех проблемы с заселением. Тем не менее нас поселили в какую-то другую комнату, тут мы и прожили всё время.
Открытие - традиционно скучное действо (все друг друга хвалят).
Пробный тур прошёл нормально, правда запустили нас на 4-ой минуте пробного тура. Решили задачи пробного и встали на 7-ое место в мониторе.
Далее был театр, в котором показывали "Человека в футляре". Понравилось.
День 2.
Утром был турнир TopSpeed Coder, в котором участвует один человек от команды, им был я. Занял 12 место, много тупил. Но шанс на хорошее место был. Четвёртую задачу мог дорешать и получить полный бал (решение придумал, закодил, но что-то перемудрил с индексами и недокодил... засуетился). Мог бы оказаться на втором месте.
На техническом совещании CWC (турнир игровых стратегий) традиционно было оооочень много тупых вопросов (организаторы даже написали что удары от стен абсолютно упруги (помню был стёб в Саратове), но были вопросы типа, а что если бублик ударится одновременно в двух карлсонов, это просто вынесло мозг и в итоге мы забили на техсовещание, подорвались и ушли. Сразу после нас всех распустили, а в столовку мы пришли первыми :) ).
Турнир CWC.
В первую очередь мы написали хорошую стрельбу. Главный вопрос для нас это был вопрос как и куда двигаться, после закоженья нескольких стратегий мы пришли к выводу, что лучшая стратегия - лететь вверх, когда нет бонусов, иначе лететь за бонусом. Хотя как оказалось, самая классная стратегия - насаться по зоне вверх вниз и по диагонали, а по пути ловить бонусы. Мы выиграли 4 битвы, в одной были 2 и в двух стали 4-ыми. Кажется на основе этого можно судить о том, что случайность очень сильно влияет на результат. Хотя я понял что нужно было сделать для того чтобы нас так не мочили в последней битве. Мы вылетели когда оставалось 8 команд, наверное хорошо.
После CWC мы поняли, что места в аудитории которой мы пишем всё же мало и попросили чуть-чуть отодвинуть стол от соседней команды (у нас это было возможно). Сразу скажу что к основному турниру это сделали.
День 3.
Главный турнир. 5 часов, 12 задач. Этот контест прошёл для нас очень удачно, мы решили 7 задач, по итогу заняли 5-ое место, проиграв ДонНУ, СПбГУ, ВолГТУ и УдГУ. Очень порадовало что мы смогли выиграть команду МГУ (в которой кстати выступал мой давний знакомый и я вообще думал у них есть хороший шанс на победу).
День 4.
Разбор, показ игр CWC и закрытие. За 5-ое место нам вручили красный диплом, подарки: наушники, вайфайку и мышку.
Теперь про косяки (возможно немного эмоционально, но как есть).
1. Очень бесит скупость олипиады. Может я что-то не понимаю, но 4 тысячи оргвзноса (в Саратове и Питере кажется 2) кажутся многоватыми к тому что мы получаем. В чём проявляется скупость. (кстати описанные ниже вещи это традиция для этой олимпиады, а не новшество)
а. 10 страниц - ограничение для печати меня просто ооочень бесит. Мы напечатали всего три листочка, думаю что многие команды вообще не печатали, так зачем же тогда надо создавать такое ограничение и показывать свою скупость, если потрачено на распечатку решений на всю олимпиаду будет что-то около 250 страниц, что примерно 60-70 руб.
б. Условие одно на команду, скреплённое скрепкой. Опять же 15 страниц условие * 50 команд * (+2 условия) = 1500 страниц = 360 руб. Неужели это так сложно. Хочется отдельно отметить ещё тот факт, что в этот раз Таганрог превзошёл себя: условие было одно, оно естественно сразу расчленяется на задачи, но некоторые задачи были на два листа, так вот: на листах не было страниц, и естественно с листочками произошёл хаос. Это круто. Мы долго ржали.
в. Один диплом на команду. Ну как так? Кому он? ВУЗу? А нам? Вот я съездил на олимпиаду, кроме сертификата ничего не привёз, а чем мне хвастаться? Я же диплом заработал, так дайте диплом каждому. Неужели так сложно? Или не логично, не понимаю? Или опять экономия?
2. За 2 минуты до начала турнира в нашей аудитории никаких движений... минута - тоже самое. За 30 сек до запланированного начала иду в лаборантскую, спрашиваю не перенесли ли турнир и не забыли ли они, ответ был примерно следующий: "У нас принтер не работает вы не видите? Идите отсюда." Только я вернулся к компу, из соседней аудитории доносится, что турнир начался. Так вот, что хочу спросить: неужели нельзя было заранее протестить принтер?, неужели наладить принтер, важнее непропущения начала турнира? Я понимаю, что там лаборанты, которые наверное даже не представляют, что такое олимпиада, но кажется такого не должно быть. Ещё одна ситуация связанная с пунктуальностью действий: установка на компы точь перед началом cwc .NET Framework`a 4-го. Неужели нельзя было протестить на локальных компах работу оболочки? Кстати сразу хочу сказать про косяки CWC. Решения на Яве не компилились, после получаса мы услышали по внутренней рации "Скажите Астрахани, что они могут посылать решения на Яве". Не услышь мы этого, мы бы и не узнали об этом. Кажется такие вещи надо объявлять всем. Ладно, решение компилится, но запуск сэмпл ботов или пустых ботов ни к чему не приводит (карлсон сразу погибает). В итоге мы кодили на C++. Ещё не понравилось что оболочка совсем не сделана для того, чтобы её быстро использовать (нужно бегать по экрану мышкой как угорелый). Банальное добавление бота в корзину по двойному щелчку по нему, а не по кнопочке в самом низу экрана могло существенно уменьшить количество затраченных нервов. О медленности системы наверное не стоит говорить, организаторы и так об этом знают.
3. Система тестирования contester.tsure.ru . Где-то я слышал что студенты с радостью бы переписали её, но им не дают доступ для этого. Что в ней бесит: часто разлогинивает, невозможность нажать правой кнопкой и открыть в новой вкладке страницы, ссылки на которые даны слева. Следующий, но уже более существенный косяк, это афигенная возможность чита. Сразу скажу, что мы не читерили таким образом и решили играть честно (организаторы при возможности и желании могут это проверить, а кому интересно подумайте сами: я бы не стал об этом писать, дабы не потерять своё на мой взгляд хорошее место). Надеюсь публикация этого здесь будет стимулом дописания системы. Так вот. До тура можно использовать старый логин, или логин с какого-либо предыдущего тура, и отправить под ним много кода: например стандартные алгоритмы или ещё что-то в этом роде на какие нибудь задачи из архива (при желании можно вообще подключить извне людей для решения - как это сделать подумайте сами). На самом туре зайти под старым логином и накопировать заготовленный код. Очень просто и читерно.
4. Хочется футболок! А то как то стрёмно, что ТТИшникам дали футболки а нам нет :(
5. Нельзя принести листы в клетку, а дают только А4. Неудобно.
Хочу заметить, что это косяки которые лежат на поверхности и на мой взгляд при их отсутствии олимпиада была бы много лучше. Описаны были здесь по двум причинам: представить организаторам "пожелания", а также выплеснуть эмоции.
Вот вобщем-то всё. Завтра утром буду дома :)
Сайт олимпиады contester.tsure.ru .
в. Один диплом на команду.
это еще что, нам за абсолютное чемпионство из Израиля прислали Один диплом Одну медаль на всю команд... и в дипломе даже состав не написан, а написан в письме которое пришло вузу.
"Так вот. До тура можно использовать старый логин, или логин с какого-либо предыдущего тура, и отправить под ним много кода: например стандартные алгоритмы или ещё что-то в этом роде на какие нибудь задачи из архива"
Во время соревнования доступ в тестирующую систему открыт только для логинов, участвующих в этом соревновании - замечание некорректно.
Тебя обманывают :-)
Кстати, а Compilation Error - все также считался за штрафную попытку?
Еще кстати бывают отборочные туры, на которых у всех участников разное ПО.
А когда совпадает сразу несколько факторов:
1. CE - это -1
2. Сообщения о том какая конкретно ошибка компиляции - не пишется.
3. На сервере компилятор от Microsoft (который мне не удалось найти под линукс)
то, понять, почему программа, компилящаяся g++, получает CE на сервере бывает очень весело :)
Это всё понятно. Я солидарен с тем, что в онлайн-контестах не надо считать CE. И меня тоже раздражает, что в contester не сообщается причина, по которой код не скомпилировался.
Андрей, я тебе без всякой доли негатива скажу, что на самом деле, при желании можно перемыть косточки любому проводимому мероприятию - от Воронежа и до Питера. Но я бы тебе совешенно искренне советовал просто получать удовольствие от поездок и не заморачиваться на мелочах.
А ещё лучше, посмотри на топовые команды - ты хоть раз видел, чтобы кто-то из них писал публично всякую ерунду про скрепочки, дипломчики и ограничение в 10 страничек?))) Люди приезжают, решают задачи, общаются со знакомыми из других городов и в хорошем настроении едут домой, а не держат в голове десяток пунктов о том, где и как их обидели, чтобы потом написать очередной (сколько их уже тут?) критический пост.
пожалуй, самое плохое, что могло случиться - кривые условия/тесты/сэмплы, режаджи/запаздывающие броадкасты - описаны не были, а это - главное
(степень кривости бывает разная, и иногда терпимая)
это уже не то что просто расстраивает, это уже жесть, и если такое происходит, то это полный провал для организаторов (имхо).
Понравилось особенно то, что можно было в CWC участвовать тренерам вместе с командой, в итоге стратегия моей команды оказалась одной из лучших, успешно боролась с финалистами и заняла 5-е место, при этом 5 раз была первой, 2 раза второй. Очень сильным было влияние на результат случайности. Из-за чего, считаю, результат квалификации стал полной лажей: реально сильнейшие стратегии попали в нижнюю часть таблицы, а в финал вышла одна откровенно слабая стратегия из верхней части таблицы. Организатором с этим обязательно что-то нужно сделать. Стратегия занявшая в финале 1 место была средней и также в финал попала из верхней части таблицы. Лично я их даже не подумал бы рассматривать в качестве победителей, скорее это место должно было достаться команде из Донецка. Интересно, что у моей команды (КубГТУ), команды АдГУ (автор блога) и ДонНУ (Лунёв) были очень похожие стратегии и в одном из последних раундов мы боролись друг с другом. Забавно было наблюдать почти одинаковое поведение, это отметило даже жюри. Но по моему мы единственные, кто гонялся за ящиками с телевизорами (поправьте, если ошибаюсь). При этом точность стрельбы оставляла желать лучше. По-видимому это и повлияло на наш конечный результат.
Материалы олимпиады организаторы обещают выложить на сайте https://sites.google.com/site/contestsfedu/
PS. Если бы программа воскресения была покороче, то и мы были бы уже дома, а так пропадает целый день.
+1, они единственные догадались использовать по полной программе гравитацию и абсолютно упругий отскок от пола)
Находиться внизу было плохо потому, например, что часто телеки взрывались или там, или где-то в середине. Кроме того, ваш бот плохо стрелял ещё и потому, что вверх стрелять трудней, а то и безполезно.
У нас была другая хитрость, её особенно хорошо было видно в начале боя, мы старались держаться чуть выше остальных. Но был в этом и недостаток, как заметили Вы: если таких оказывалось два и более, то они "увлекались" друг другом. Эта хитрость также иногда приводила к тому, что мы оказывались в гуще событий и получали взрыв телека, предназначавшийся не нам.
Если хотите разместить подробное описание ИИ, то может сделать это здесь?
"Стратегия занявшая в финале 1 место была средней и также в финал попала из верхней части таблицы."
Вообще-то предыдущий пост писал победитель соревнований, и если бы Вы внимательно смотрели финальный бой, не могли бы не заметить их триумфальных движений по вертикали, которые и обеспечили им победу)
А придирки к "мелочам", скрепочкам и количеству дипломов - это очень классно и правильно, ведь именно из таких мелочей и складывается общее впечатление о контесте, и они сильно влияют на настроение участников. Хотел бы я, чтобы наши контесты так же детально критиковали. Приезжай к нам :)
Не согласен с пассажем про читерство - с ним замучиться бороться же. Имхо, пора уже либо вводить презумпцию честности, либо узаконивать читерство.
имхо, с этого надо начинать, потому что задачи - самая важная часть любого соревнования)
http://contestsfedu.blogspot.com/
Этот список я бы резюмировал так (хоть я и не являюсь организатором, а отвечаю только за задачи):
1.а - замечание смешное, потому что ограничивают страницы не с целью экономии, а чтобы участники не устраивали бардак в аудитории, печатая тонну бумаги.
1.б -проблема не глобальная (есть мнение, что 2 лишних комплекта только путают участников, какие задачи читались/решались, а какие нет). На мой взгляд электронные условия (чего нет кстати почти нигде) намного удобнее, как запасной вариант и для копирования тестовых примеров.
1.в - в принципе, согласен, но не думаю, что это такая уж страшная проблема. По мне так, лучше один качественно сделанный диплом (согласись, симпатичный?), чем тот ужас, который выдают в неограниченном кол-ве на 1/4 и 1/2.
2.С лаборантами есть проблемы везде и всегда, и у нас в принципе не хуже, чем в других местах. Установка .NET Framework перед началом - согласен, опасное мероприятие. CWC уже обсудили, с эргономикой не всё прямо уж так было плохо, хотя замечание про двойной щелчок поддерживаю.
3. Разлогинивание - действительно неприятно и легко пофиксить, если найти кому. Правая кнопка на контесте не особо нужна, но в целом неудобство есть - здесь проблема в старой технологии, по которой делался интерфейс - в общем, исправление требует существенных ресурсов. Про читерство уже сказал - проблемы такой нет.
4. Футболки всем дают только на 1/4, и то присланные от ACM. И тут дело не в скупости, а в том, что это действительно дорого. Во всех остальных случаях - это всегда футболки от спонсоров, а они кому хотят, тому их и дают) Кстати командам ТТИ ЮФУ футболки делает спонсор, размещая на них свой логотип - это нормально, потому что рекламировать себя за пределами Таганрога им может просто не нужно.
5. Вынесу предложение купить пару толстых тетрадок на следующий год))) По-моему в Саратове тоже нельзя использовать клеточку.
В общем, спасибо за критику, но выходит, что добрая половина твоего текста не очень по делу) Лучше бы что хорошее написал)))
Дело в том, что задачу C (Максимальный XOR) несколько проще было решить участникам на С++ с помощью битовых операций на unsigned long long, чем на Java c помощью BigInteger (приходилось переводить всё в строки и т.д.).
На результаты это особо не повлияло, потому что кроме mastersobg никто не писал на Java, а он справился с этим не медленнее, чем те кто писал на С++ :-)
Ещё было подозрение по задаче D в духе, что на unsigned int можно было получить больше баллов за частичное решение (TLE), чем на long в Java, но после проверки оказалось, что больше баллов (+4) получило решение без операций взятия остатка отделения - и это справедливо.
Но тем не менее на будущее я взял на заметку, что подвохи с unsigned могут создавать трудности несколько большие, чем просто замена типа, для тех кто пишет не на С++.
Согласен - очень верно подмечено про "поле боя"))
Третий комплект лично я бы расценивал, как возможность унести нетронутые условия с собой и почитать их в спокойной обстановке, например, в поезде :-)
Уверен, что на следующий год к этим замечаниям прислушаются.
Думаю, мало кто будет спорить, что единственным справедливым вариантом для проверяющего сервера является [1 язык == 1 компиллятор]. В нашем случае это MSVS, потому что среды разработки под Windows имеют гораздо более широкое распространение, и потому что университет плотно сотрудничает с Microsoft (студентам доступны полноценные бесплатные версии софта, проводится региональный ImaginCup и т.д.), и потому что у нас есть .NET компилляторы (по-моему, C# - второй по популярности язык на соревновании) и т.д. - причин много.
На полуфинале, например, есть и VS C++ и GNU C++ на проверяющем сервере. При этом в командной строке GNU выставляется стек = 64 Мб, а в VS - нет. Как итог в прошлом году многие кто писал на VS либо сделали кучу штрафов, либо вообще не сдали задачу I (лексикографический кратчайший путь, кажется) из-за переполнения стека. Директивы #pragma знают далеко не все, особенно на младших курсах, а отправить на GNU тоже надо догадаться. На мой взгляд, не очень правильная ситуация.
В общем, установить на компы участников MigGW мы можем, а вот поддерживать на проверяющем сервере соревнования врядли будем (при решении в банке задач GNU C++ под Linux доступен).
P.S.Надеюсь, после пробного тура лаборанты не запрещали вам использовать компиллятор командной строки VS)))
Delphi - платная и слабо поддерживаемая на сегодняшний день среда.
Во-первых, она существенно менее платная for academic use. Учебное заведение может её купить по этой программе для использования в классах.
Во-вторых, неожиданно порадовал оптимизирующий компилятор, который, развернув цикл, выдал миллиард операций
if a[i] = x then res := True
в секунду (из-за этого, правда, в задаче проходил линейный поиск вместо двоичного, но это уже другая история :) ).
1. Недостатки есть, конечно. Преимущество: одно решение на одном языке гарантированно будет либо зачитываться либо нет. Яркий пример с полуфинала я описал. На финалах доступен только GNU (о причинах сейчас не говорю), так что это нормальная практика. И конечно же я не спорю с тем, что опытные участники должны понимать основные различия и проверять всё на пробном туре.
2.Надеюсь, я не раскрою военной тайны, сказав, что на этой Олимпиаде было всего 1 зачтённое решение на Pascal, а в споре C# vs Java небольшое преимущество у первого, так что я не погорячился. Статистика определяется многими факторами и везде разная.
3. Об этой статистике я спорить точно не буду, но мне кажется что в отношении Восточной Европы это именно так :-)
По поводу реальных причин - я не в курсе, только высказываю свои предположения.
1. На техническом совещании перед контестом рассказывалось о строках компилляции и о том, что нужно знать директивы "используемого языка", чтобы, в том числе, увеличивать размер стека. Хуже врядли стало - лучше знать о существовании проблемы и уметь её решать, чем не знать и не понимать, а просто слать на GСС, потому что жюри увеличило размер стека в строке компилляции.
2. Я и сказал "небольшое преимущество")))
3. Согласен.