Блог пользователя Optimist

Автор Optimist, 9 лет назад, По-русски

Две недели назад завершилась уже вторая олимпиада от паблика "Типичный программист". Две недели назад мы приняли решение написать этот пост, но решили подождать (чего — читайте ниже).

И вот сейчас, когда температура стульев вновь повысилась, мы с чистой совестью приступили к выполнению обещания.

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

Разумеется, от этой олимпиады мы вряд ли ждали многого, как и от многих других олимпиад по программированию, в сообществе которых не видно знакомых лиц и не слышно знакомых слов. Опасаться стоило прежде всего некачественных задач и нетрадиционных способов проверки решений. Однако те, кому повезло участвовать в прошлом году, хоть были не очень довольны организацией контеста в целом, но об условиях задач отзывались более-менее положительно. В качестве тестирующей системы использовался ejudge.

Почему же всё-таки в этом хотелось поучаствовать? Наверное, во многом из-за желания посмотреть, как может выглядеть большая олимпиада, организованная без помощи специализированной платформы (будь то Codeforces, Яндекс.Контест или другие) и обслуживающих эту платформу людей. Кроме того, обещали призы и подарки. Наконец, учитывая предполагаемую аудиторию мероприятия, не хотелось терять шанс показать "обычным программистам" (которых в последние годы часто рассматривают почти как антагонистов "спортивных программистов"), каково это — находиться на нашем "поле боя".

Сразу следует сказать, что у олимпиады были сильные стороны — прежде всего это набор задач про Brainfuck, в одной из которых требовалось написать интерпретатор этого языка, а в нескольких других — простые программы на нём. Решение первой задачи можно было дебужить решениями других задач, и это было очень интересно и здорово. Было видно, что жюри по мере своих сил старается решать возникающие технические проблемы, информировать о состоянии дел через паблик.

Но, всё-таки, чем же нам действительно запомнится это соревнование?

1) Да, разумеется, ПРОСТОЯМИ. В течение первого дня олимпиады ожидание вердикта по решениям могло занимать более часа, размер очереди проверяемых посылок мог достигать шести сотен.

> лол, в прошлом году очередь была около 1400 в свои лучшие времена, интересно, в этом так получится?)

- Андрей из скайпа

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

2) Сразу после простоев идёт специфичная система ранжирования: при одинаковом количестве баллов и попыток выше находится тот участник, который имеет меньшее время между первым и последним решением. Казалось бы, в свете первого пункта такая система вообще не жизнеспособна. Осторожный участник, не уверенный до конца в своём решении, в течение первого дня был вынужден ждать вердикта, накапливая таким образом временной штраф. В таких условиях, наверное, больше подошла бы система оценки времени наподобие ICPC. Окей, всё же можно допустить, что авторы не предполагали такой беды с серверами, а исправлять метрику ранжирования на ходу не было возможности. Но…

3) В итоге контест выигрывает человек с разницей в 3 секунды между посылками. Разумеется, вполне можно было решить всё заранее и потом отослать решения по всем задачам вместе; вряд ли кто-то сможет обвинить топовых участников в том, что они использовали какую-то другую стратегию. Но, тем не менее, нельзя отрицать, что первые два пункта в совокупности породили отличное поле для недобросовестного поведения участников. В погоне за призами, особенно ближе к концу соревнования, количество новых участников, внезапно сдающих всё за минуты с первой попытки (при наличии в проблемсете минимум двух сложных задач с “подводными камнями”, где можно было получить неполный балл), росло темпами, несовместимыми со здравым смыслом. В итоговой таблице было более сотни полных решений, десятки — одним-двумя брёвнами по всем 14 задачам.

4) Наконец, пункт, из-за которого этот пост появился на свет только сейчас, так как надежда ещё теплилась. Обещания проверки решений на плагиат. Очевидно, что в сложившейся ситуации она была очень и очень важна. Ближе к концу соревнования организаторы стали запугивать недобросовестных участников страшными карами и предлагать сдаться с повинной, дабы сохранить часть баллов (что, вообще говоря, само по себе странно, так как за неспортивное поведение в приличных домах банят). В турнирной таблице даже появились пометки читерских попыток, правда, все они красовались на одном-единственном участнике до самого конца контеста. В итоге, к сожалению, ощутимых изменений от пристальной проверки решений, занявшей две дополнительных недели (ДВЕ НЕДЕЛИ, КАРЛ), так и не оказалось (по словам организаторов, дисквалифицирован был один участник). Топ турнирной таблицы сохранил своё неповторимое великолепие.

Et cetera. Надо бы упомянуть несколько мелких, но запомнившихся особенностей, как то:

  • нерасторопность жюри в ответах на клары (наверное, из-за того, что клар было много),

  • недочёты в интерпретаторе брейнфака, вылившиеся в ночной реджадж (получается, весь день минимум 3 задачи могли получать неполное количество баллов, что в дальнейшем повлекло ещё большую путаницу в результатах),

  • общее качество задач, которое на удивление соответствовало ожидаемому:

Тимур, а вот интересно, кто-нибудь перед отправкой хоть немного тестил, или все просто понимали "ага, ну очевидно, что в этой задаче невероятно слабые тесты, поэтому отправлю-ка я треш"? :)

- https://vk.com/tproger_olymp?w=wall-67845382_4562

Nuff said.

Что же остаётся в итоге? При всех недостатках, мы не можем забывать про важность таких олимпиад для популяризации олимпиадного программирования. И организаторы, и спонсоры проделали большую работу. Но было бы ещё лучше, если бы недостатки со временем исправлялись, метрики улучшались, задачи дорабатывались напильником. В текущей же ситуации получилось так, что из-за упомянутых багов у многих участников сложилось скорее негативное представление об олимпиадном программировании, а это наверняка совсем не то, к чему стремились организаторы.

Видимо, сам этот пост — наше средство создать обсуждение олимпиады, оставить напоминание её создателям, что их работу видят в большом олимпиадном сообществе.

Участвовали ли в этой олимпиаде вы? Чем она вам запомнилась? Что вы можете про неё рассказать?

Всегда ваши, синие да зелёные из Ульяновска. Писали все вместе, правда.

  • Проголосовать: нравится
  • +148
  • Проголосовать: не нравится

»
9 лет назад, # |
Rev. 6   Проголосовать: нравится +43 Проголосовать: не нравится

В общем, они слишком культурные. Изменили мой текст полностью(((( Было больше гнева и бугурта... за 2 дня, на мой вопрос так и не ответили. хотя я был прав, что их проверка на одной из задач — херня. Это надо — в своем интерпретаторе сделать кривой вывод переменной, и не смотреть решения участников, чтобы после кучи гневных постов в группе в вк, исправить ночью. А проверка на плагиат — это фейл полнейший.

»
9 лет назад, # |
  Проголосовать: нравится +51 Проголосовать: не нравится

Добавлю минус: отсутствие вменяемой системы восстановления пароля + сгенерированный пароль не кидался на почту при регистрации.

»
9 лет назад, # |
  Проголосовать: нравится +35 Проголосовать: не нравится

Имхо, не хватило трэша в виде последней задачи прошлого года, которая справилась с распределением призов.

Ужас в виде первоначального условия задач про интегрирование доставил, где уровень математической культуры был чуть выше плинтуса. Повествование "Для данной задачи интегралом функции..." только запутывает, можно было сказать "Посчитайте площадь фигуры, ограниченной тремя прямыми и графиком функции f(x)", не оскорбить определение интеграла и не сжечь пару стульев. Такое ощущение, что условия никто не проверял, ибо попадались фразы "“.” (запятая)", но это уже совсем по мелочам.

Очень понравились люди, которые в комментариях группы олимпиады спокойно обсуждали решения задач.

Ну и да, с регламентом налажали.

  • »
    »
    9 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

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

»
9 лет назад, # |
  Проголосовать: нравится +10 Проголосовать: не нравится

В общем, получился контест на брейнфак. Лол

»
9 лет назад, # |
Rev. 2   Проголосовать: нравится +32 Проголосовать: не нравится

Мой комментарий вк по поводу всего этого с моим "разбором" задач удалили(еще удалили вопрос почему удалили комментарий)
Кстати он вроде был полностью приличным, видимо не понравилось, что пользователи умеют решать задачи лучше авторов, ну или хз что.
А так в прошлом году было реально лучше, пусть и проверялось гораздо дольше
А в этом году (начал писать во второй день, "баги ведь будут, может исправят ко второму дню", подумал я и не прогадал) с этим было получше
Сам решил все кроме интеграла с "+", не увидел ничего сложного и интересного(конечно если не считать SLR на BF++, но он уже немного поднадоел). Ну и пасхалку в первой, повеселило больше всего в "олимпиаде"
С интегралом вообще весело. Задача без ограничений, без ТЛ, без объяснимой точности. Писал на питоне с eval, но так как без "запуска" было сложно определить время исполнения и метаясь между порядком интерполяции и быстротой проверил на кф на случайной функции -- отработало 0.6 секунд. Подумав что сервер там не сильно слабже, отправил и получил ТЛ
убавил число итераций в два раза -- залетело за 0.5
Но да как бы пофигу, эта посылка ничего не решала (13->9 место)
А по поводу странной системы ранжирования -- все делается очень просто. Берется фэйк, на нем тестятся все нетривиальные задачи. Если писал сам -- переписать на другой язык (c++/java <-> python, c++/java <-> delphi, ...) с полным изменением стиля -- вообще не составит труда, не то что написать скрипт, сабмитящий все в одну секунду. Такая система порождает только читерство, а не ранжирует участников. Сделали бы тогда исследовательскую задачу как в прошлый раз -- и ранжировать не надо было бы
Хочется что-то написать про плюсы, но Вы уже все написали, их слишком мало...
(если вдруг кому интересны мои решения/разбор -- тык)

UPD: кстати из плюса понравилось, что задачи были на разные языки(но это видно потому, что я знаю питон ^_^)

  • »
    »
    9 лет назад, # ^ |
      Проголосовать: нравится +5 Проголосовать: не нравится

    у нас так переборную задачу загоняли, которая получала от 70 до 96 баллов, при одинаковом коде.

    Понятно, что участник на опыте, не даст себя спалить.... Но так таких в верхней части овердофига, и я не думаю, что прям все такие преписывали на другом языке, или меняли полностью код и редактирование

  • »
    »
    9 лет назад, # ^ |
      Проголосовать: нравится +21 Проголосовать: не нравится

    Заметил в решение Е такие строчки:
    if b < a: t = a a = b b = t

    Можно делать так:
    a, b = b, a
    Это одна из вещей, за которую я обожаю питон.

    • »
      »
      »
      9 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится

      да, спасибо, знаю, но почему-то забываю про нее)

    • »
      »
      »
      9 лет назад, # ^ |
        Проголосовать: нравится +7 Проголосовать: не нравится
      variableWithAVeryLongName1, variableWithAVeryLongName2 = variableWithAVeryLongName2, variableWithAVeryLongName1
      
»
9 лет назад, # |
Rev. 2   Проголосовать: нравится +10 Проголосовать: не нравится

Я бы ещё добавил в разбор такие два больших фейла как то, что условия задач менялись в течение олимпиады. В задаче на интерпретатор в субботу утром было сказано, что переменная (не ячейка) не может хранить больше 255, собственно так я эту задачу и написал где-то к 11:00 в субботу на не полное количество баллов и искал ошибку до обеда воскресенья, когда решил обновить файл с условиями. Второй фейл — это нежелание раскрывать тесты, в том же интерпретаторе 13 тест стабильно падал в моём решении на шарпе. У меня было считывание чисел (а жюри обещало что на вход приходят числа) в виде:

int value = int.Parse(Console.ReadLine());

После того как изменил на

int value;
try{
 value = int.Parse(Console.ReadLine());
}
catch{
 value = 0;
}

Решение прошло 13-й тест. Причём с момента начала олимпиады, я спросил про этот тест и в личку жюри и в комментах, по-моему уже раз 5, собрал кучу лайков и прочее. Ответа от жюри на эту ситуацию до сих пор нет. К мелким косякам я бы добавил полное отсутствие описания ограничений на входные данные к подавляющему большинству задач.

»
9 лет назад, # |
  Проголосовать: нравится +93 Проголосовать: не нравится

Я могу написать очередной комментарий на пятьдесят строчек, как мне понравился этот контест, но не буду, всё равно все всё и так знают. Ограничусь кратким.

Это был худший по подготовке контест, который я когда-либо писал в своей жизни.

»
9 лет назад, # |
Rev. 5   Проголосовать: нравится +41 Проголосовать: не нравится

От себя хочу добавить, что контест был организован на редкость безответственными людьми, имеющими слабое представление о какой-то вежливости. Говорю я, разумеется, вот об этом персонаже (Дмитрий Торба, https://vk.com/id65854491). Во время контеста добиться хоть какой-то связи с жюри было невозможно и я был вынужден писать члену жюри в вк, чтобы задать интересующий вопрос.

Кстати, интересный факт, который вроде как еще не обсуждался — в течении контеста я хотел скинуть ссылку на standings другу. Как я это сделал — скопировал адрес странички и отправил ему. И тут, внезапно, он (друг), кликнув на ссылку, зашел в систему из-под моего аккаунта! Разумеется, я отправил господину Торбе сообщение об этом. Ответ, который я получил от него: "Это не баг. Не надо давать ссылки из своего аккаунта другим людям, если аккаунт авторизовывается по ключу в GET-параметрах" — ну да, разумеется, какой же это баг, это я глупый...

Также хочу пояснить, по какой же причине меня так трясет от этого контеста. Я потратил на него два дня (это в зачетную-то сессию), надеясь хорошо посдавать задачки и выиграть майку. В итоге я действительно написал все задачи, но одна из них (сортировка на брейнфаке) не зашла в системе на втором тесте из условия (и на всех последующих также). Притом на моем интерпретаторе (а также на интерпретаторе Golovanov399) все работало прекрасно. Разумеется, у меня возникли некоторые вопросы по поводу работы системного интерпретатора (тем более, что происходило это в последние полчаса контеста и в системе падало все подряд). Конечно, я написал и жюри и господину Торбе просьбу посмотреть, в чем же там беда — они меня, однако, полностью проигнорировали. Видать, членам жюри было слишком высоко спускаться со своего Олимпа, чтобы ответить на мои вопросы.

В итоге, имея все решенные задачи, я оказался на каком-то 280 месте, без шансов на какие-то призы (в топе же находятся ребята с временем сдачи задач по три минуты, так и не выявленные дегенератами-жюри) — nuff said, как уже было кем-то отмечено.

Впрочем, какого уровня организации можно ожидать человека, который вместо того, чтобы провести апелляцию (вместо этого он начисто игнорирует мои сообщения, лол) публикует у себя на страничке такое?

А еще мне почему-то кажется, что он это и накатал — в конце концов, что еще за рак мог найти в этой старой и протухшей пасте что-то забавное?

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

  • »
    »
    9 лет назад, # ^ |
    Rev. 4   Проголосовать: нравится 0 Проголосовать: не нравится

    Но для нас, "сине-зеленых", все же, это одна из немногих возможностей выиграть призы. (если все решали бы честно конечно) По крайней мере, так было в 1м чемпионате.

    • »
      »
      »
      9 лет назад, # ^ |
        Проголосовать: нравится -18 Проголосовать: не нравится

      То есть, вы считаете все эти маленькие хитрости, типа "зарегать два аккаунта и сдать все за три секунды" — возможностью выиграть призы для "сине-зеленых"? Тогда у вас явно заниженная самооценка.

      Я-то думал, эта возможность должна достигаться за счет каких-то необычных задач вроде Брейнфаковских (что, впрочем, у оргов получилось весьма ущербно).

      • »
        »
        »
        »
        9 лет назад, # ^ |
        Rev. 3   Проголосовать: нравится +3 Проголосовать: не нравится

        Вы не правильно его поняли. Это немногая возможность выиграть призы ЧЕСТНО, а не как минимум 1/5 нынешнего топа. Выиграть так как вы сказали было бы изи, благо знакомые, которые сдали все, были.

      • »
        »
        »
        »
        9 лет назад, # ^ |
          Проголосовать: нравится +8 Проголосовать: не нравится

        Я имею ввиду, что количество призов довольно велико и в 1м чемпионате я выиграл, например, футболку.

»
9 лет назад, # |
  Проголосовать: нравится +24 Проголосовать: не нравится

Вот ещё со стены организатора: https://vk.com/wall65854491_3760

Каким-то волшебным образом появились люди, которые сдавали все мгновенно (у нас участники сначала сортируются по количеству полученных баллов, потом - по количеству посылок, потом - по времени между первой и последней посылкой) и с первого раза. Лучший участник сдал 14 задач с первого раза за 3 (!!!) секунды, а Саша Ольшанский - примерно за 10. ...

Несмотря на все эти косяки, по сравнению с предыдущим годом, прогресс очень большой. Так показатель количества вопросов, заданных через тестирующую систему из расчета на одну посылку уменьшился с прошлого года в пять раз, что, на мой взгляд, свидетельствует о существенном улучшении качества условий. При сопоставимом числе участников в разы возросло количество отправленных решений, что свидетельствует, что задачи были интересным, несмотря, а может именно потому что, оказались проще, чем в прошлом году. 

По окончании олимпиады, несколько человек не поленились и написали мне, что им понравилось, и это было очень приятно. Несмотря на то, что олимпиада не настолько серьезная, как те, которые проводят профессионалы для профессионалов (хотя бы потому что я с людьми, которые мне помогают - не профессионал, а аудитория у "Типичного программиста" куда как шире, чем группка осоловелых олимпиадников), думаю, у нас получилось неплохое и уж точно нескучное мероприятие.
  • »
    »
    9 лет назад, # ^ |
      Проголосовать: нравится +12 Проголосовать: не нравится

    Вот продолжение цититы из первого абзаца:

    Лучший участник сдал 14 задач с первого раза за 3 (!!!) секунды, а Саша Ольшанский - примерно за 10. Не знаю, как им удалось, я бы так не смог даже со всеми готовыми решениями, но всех надо будет проверить на списывание, подетектить дублирующие аккаунты, и дисквалифицировать к такой-то матери тех, кто пользовался двумя. Потому что нехрен.
    

    Мне кажется, что уже из этой коротенькой цитаты ( подетектить , такой-то матери, нехрен) можно сделать выводы об исчерпывающем профессионализме человека. Да, кстати, результата от этой пустопорожней болтовни про "дисквалификацию к такой-то матери" мы так и не увидели. В общем, ущербность ракового паблика "Типичный программист" и компании "1С" в очередной раз доказана.

    • »
      »
      »
      9 лет назад, # ^ |
      Rev. 2   Проголосовать: нравится +6 Проголосовать: не нравится

      Там кто-то ему скинул ссылку на тему))) Я все жду врыва.

    • »
      »
      »
      9 лет назад, # ^ |
        Проголосовать: нравится +16 Проголосовать: не нравится

      Не знаю, как им удалось, я бы так не смог даже со всеми готовыми решениями

      Что-то совсем уныло, ни борщ приготовить, ни гвоздь прибить. Ни задачу сдать, ни скрипт для рассылки написать, что всякое рачье делало

      а аудитория у "Типичного программиста" куда как шире, чем группка осоловелых олимпиадников

      Даже слишком широкая, контент соответствует

      • »
        »
        »
        »
        9 лет назад, # ^ |
          Проголосовать: нравится +14 Проголосовать: не нравится

        По идее можно успеть сдать 14 задач за 3 секунды: надо открыть 14 вкладок, в каждой выбрать файл для отправки, а потом foreach Ctrl+Tab, Left Click.

»
9 лет назад, # |
  Проголосовать: нравится -75 Проголосовать: не нравится

Хорошо, давайте обсуждать. Отвечая порядку, сначала хотелось бы поблагодарить за комплименты в адрес проблемсета. Теперь надо как-то прокомментировать критику.

1) Очередь тестирования. Достигала 1000, не 600. Да, это всецело моя вина. Протестировать заранее на высоких нагрузках, конечно, можно при помощи методов нагрузочного тестирования, однако понятно, что требуются очень обширные ресурсы, для симуляции нагрузки по отправке разных решений, когда в контесте одновременно 400 человек. Конечно, в прошлом году с тестированием тоже были проблемы; но опыт прошлого года никак помочь не мог: в прошлом году тестирование проводилось на не очень мощном моем личном сервере, а в этом был арендован сервер от digitalocean.com с 20 ядрами и 64 гб оперативной памяти. Этого оказалось недостаточно — тестирование проходило чуть медленнее, чем отправка. Ночью сервер был расширен и тестирование стало проходить чуть быстрее. В силу того, что посылки накапливаются, разница получилась огромной. Кроме того, в этом году посылок было почти в три раза больше, чем в прошлом (при примерно одинаковом количестве участников задач было больше).

2) Система распределения родилась из двух противоречащих друг другу запросов. Первый запрос — чтобы каждый участник мог начать сдавать задачи в один и тот же момент времени. Второй — чтобы желающие могли сдавать задачи сколь угодно долго. Третий — чтобы участники однозначно распределялись по местам. Виртуальный контест не удовлетворяет второму запросу, контест без учета времени — третьему, контест с учетом абсолютного времени от начала — первому. Существующая система сортировки кажется разумным балансом, тем не менее, я готов принять любые альтернативные системы сортировки, которые отвечали бы поставленным задачам.

3-4) Это просто неправда, у меня вот тут резервная копия таблицы, которая была в конце контеста — http://ejudge.tproger.ru/old.html Найдите второго пользователя в итоговой таблице. Лишние посылки по вине жюри тоже отслуживались, участники получили лучший приз из тех, что они могли получить в случае, если бы табличка строилась без таких посылок или с оными. Алгоритм проверки решений описан в посте про результаты олимпиады: 3) Как проходила проверка на списывание? В два этапа. На первом этапе каждое решение лидеров по каждой из задач A-F сравнивалось со всеми остальными решениями по той же задаче при помощи программы MOSS Plagiarism Detector. На втором этапе решения "сложных" (G.7 и G.8) задач на Brainfuck++ сравнивались на предмет совпадения значащих команд (значащей командой называется та, которая оказывает влияние на вывод программы) c другими решениями той же задачи. Этот алгоритм, на мой взгляд, довольно разумен. Если он ничего не нашел — не могу же я просто так удалить участника, ни за что ни про что. Ну то есть могу, но тогда претензии будут еще более серьезны =)

Ну и последнее, про проблемсет. В прошлом году он был немного сложнее; для футболки надо было решить 5.5 задач. В этом году для футболки надо было решить 6.5 задач. По интересу — ну, примерно одинаковые, хотя в этом году было больше задач на реализацию. В общем, сложность контеста вписывается в какие-то разумные отклонения, хотя лично мне проблемсет этого года кажется веселее.

Любые разумные предложения, по тому, как можно было бы улучшить олимпиаду с учетом специфики аудитории и помимо того, что и так понятно (ускорение тестирования) будут с радостью приняты (лучше, правда, мне ВК, чем тут, но и тут я, наверное, прочитаю).

  • »
    »
    9 лет назад, # ^ |
      Проголосовать: нравится +19 Проголосовать: не нравится

    Всё же, в целом, задачи были далеки от спортивного программирования как по сути, так и по оформлению. Почему бы не обратится к проверенному временем коллективу авторов?

    По поводу второго пункта, почему бы не перенять опыт кодшефа, а именно их лонгчеленджа. 9 — acm-style задач и одна оптимизационная задача.

  • »
    »
    9 лет назад, # ^ |
      Проголосовать: нравится -21 Проголосовать: не нравится

    И по прежнему нет никаких официальных извинений за неправильные условия в первый день. И что за хрень приходила вместо чисел в 13 тесте в задаче на интерпретатор.

  • »
    »
    9 лет назад, # ^ |
      Проголосовать: нравится -13 Проголосовать: не нравится
    Любые разумные предложения, по тому, как можно было бы улучшить олимпиаду 
    

    Попросить его договориться и провести следующую олимпиаду на Codeforces.

    • »
      »
      »
      9 лет назад, # ^ |
        Проголосовать: нравится -23 Проголосовать: не нравится

      Зачем вам и "Типичному программисту" еще одна олимпиада на CF, такая же как и куча других?

      • »
        »
        »
        »
        9 лет назад, # ^ |
          Проголосовать: нравится +22 Проголосовать: не нравится

        Правильно. Лучше пускай будет отдельная с хреновой организацией и игнорирующим реальные замечания жюри. Вы даже здесь не отвечаете на конкретные вопросы. Пять моих комментариев про 13-й тест в vk проигнорировали. Отвечали на комментарии ниже и выше моего. Здесь такая же ситуация. Если вам 1С ещё и денег заплатил за организацию, то вообще должно быть стыдно так их отрабатывать.

        • »
          »
          »
          »
          »
          9 лет назад, # ^ |
            Проголосовать: нравится -20 Проголосовать: не нравится

          Лучше развивать отдельную, да. Хотя бы пытаться. Но это вообще не по теме.

          Алгоритм получения теста описан в посте с результатами олимпиады.

          • »
            »
            »
            »
            »
            »
            9 лет назад, # ^ |
              Проголосовать: нравится -11 Проголосовать: не нравится

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

            • »
              »
              »
              »
              »
              »
              »
              9 лет назад, # ^ |
                Проголосовать: нравится 0 Проголосовать: не нравится

              А что мне надо сказать по поводу условий? Они были исправлены, в сторону смягчения, баллы теряться не должны были. И, вроде, рассылка всем про исправление условий все-таки была, разве нет?

              • »
                »
                »
                »
                »
                »
                »
                »
                9 лет назад, # ^ |
                  Проголосовать: нравится +8 Проголосовать: не нравится
                баллы теряться не должны были.
                

                Охренеть. В первой версии условий переменна может хранить только 255, потом вы меняете на 30000. Тут же попадают решения где есть переход назад, присвоение переменной номера текущей ячейки и вывод переменной на экран.

  • »
    »
    9 лет назад, # ^ |
      Проголосовать: нравится +29 Проголосовать: не нравится

  • »
    »
    9 лет назад, # ^ |
      Проголосовать: нравится +19 Проголосовать: не нравится

    1) Достаточно было провести пробный тур, с несколькими типичными задачами (что-то типа a + b, реверс строки и т.п.), за день до основного тура было бы достаточно, это позволило бы не полностью, но в достаточной мере решить проблемы с серверами, не было бы тех 3-4 часов ожидания проверки задачи.

    2) Вообще система кто раньше сдал, тот и выше подходила бы лучше, топовые места(бубны) читера бы точно не забили. И пофиг на количество попыток.

    3-4) Насколько я помню, второй участник из ссылки, что вы привели, был удален еще до конца контеста. Окей может быть вы и удалили пару явных фейк акков. На остальных якобы нет доказательств — говорите. Выше уже написали как завуалировать решение, я не думаю, что все такие участники в топ300 так и сделали. Может изменение имен переменных, или еще что-то, но хороший антиплагиат это выявил бы. Вы видимо решили особо не заморачиватся этим, и пропустили кучу народу, которые сдавали решения в течении короткого срока времени с 1-й попытки в конце контеста. Я скажу, что минимум пара моих решений и сокомандника совпадали таки на 90% (из-за шаблона) и малого количества кода(A, B, возможно С). Я был готов при нормальной проверке обьяснять, но увы ее не произошло. Брейнфаковская сортировка, которая видимо совпадала у большого количества участников, ибо ее было очень легко найти в гугле, скопировать и заслать. А моментом, с не удалением явных нарушителей правил, вы вызвали кучу бугуртов, и оставив сейчас все как есть, в следующий раз вы обрекаете себя на тоже самое, а может и еще хуже.

    • »
      »
      »
      9 лет назад, # ^ |
        Проголосовать: нравится -18 Проголосовать: не нравится

      1) Возможно, но в нем ведь не возникало бы TL, и в туре на несколько часов не было бы столько участников. Вопрос ведь в том, быстрее или медленнее сервер тестирует посылки, насколько быстрее или медленнее — уже не так важно, так что нужна довольно точная подстройка.

      2) Нет, это не работает. Тогда человек не может увидеть пост, сказать "О, хочу поучаствовать" и начать с более-менее равными шансами с остальными.

      3) Метод проверки плагиата описан; предлагайте более хороший антиплагиат. Изменение переменных — это фигня, фиксится одним из первых.Вы предлагаете дисквалифицировать участника на основании того, что он вам кажется подозрительным?

      • »
        »
        »
        »
        9 лет назад, # ^ |
          Проголосовать: нравится -10 Проголосовать: не нравится

        По поводу списываний есть один очевидный факт: задачу на интеграл невозможно сдать с первого раза, т.к. необходимо подбирать количество итераций на которые надо делить отрезок, чтобы уложиться и в TL и в 10% погрешности. Из всех ребят, кто честно писал задачи я не знаю ни одного, кто смог подобрать это значение с первой попытки. А чуваки из топа настолько талантливые?

        • »
          »
          »
          »
          »
          9 лет назад, # ^ |
            Проголосовать: нравится 0 Проголосовать: не нравится

          Это не противоречащим задачи. Достаточно прикинуть, сколько операций может выполнить ЯП за отведенное время, и сделать чуть-чуть меньше. Понятно же, что чем больше итераций — тем лучше точность.

          • »
            »
            »
            »
            »
            »
            9 лет назад, # ^ |
              Проголосовать: нравится +3 Проголосовать: не нравится
            Достаточно прикинуть, сколько операций может выполнить ЯП 
            

            Как это прикинуть без такой офигенной вещи как "Запуск кода на тестирующем сервере", которая успешно применяется на cf?

            • »
              »
              »
              »
              »
              »
              »
              9 лет назад, # ^ |
                Проголосовать: нравится 0 Проголосовать: не нравится

              Для интерпретируемых языков рассчитывайте на чуть меньше, чем 100к операций в секунду, для компилируемых — можно на 10^7-10^8.

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

              • »
                »
                »
                »
                »
                »
                »
                »
                9 лет назад, # ^ |
                  Проголосовать: нравится +16 Проголосовать: не нравится

                Что же вы так упёрты и не хотите признаться что олимпиада была подготовлена и проведена ужасно. Как, как?! Как я могу прикинуть количество операций, если в условиях задачи нет не слова о том, какой длины будет функция? Хрен с ними, что сложно представить сколько по времени будет выполняться eval, но даже если я на плюсах напишу свой парсер с обратной польской, буду сам пробегать по отрезку и т.д. Как, блин, я смогу узнать верхний предел? Если нет ограничений сверху на длину функции? Вывод только один — подбирать количество итераций, что с первого раза не сделаешь, и все, кто сдал эту задачу с первой попытки должны проверяться под микроскопом!

                • »
                  »
                  »
                  »
                  »
                  »
                  »
                  »
                  »
                  9 лет назад, # ^ |
                    Проголосовать: нравится 0 Проголосовать: не нравится

                  Ну можно попробовать поделить 1e7 на длину функции. Ну или что-то в таком роде

              • »
                »
                »
                »
                »
                »
                »
                »
                9 лет назад, # ^ |
                  Проголосовать: нравится +17 Проголосовать: не нравится

                Запуск, кажется, для того и нужен, чтобы узнать, 10^7 или 10^8, разница всё-таки большая.

                • »
                  »
                  »
                  »
                  »
                  »
                  »
                  »
                  »
                  9 лет назад, # ^ |
                    Проголосовать: нравится +1 Проголосовать: не нравится

                  10^7 хватало за глаза, все же 10% — это довольно много. Но да, я понял про запуск.

              • »
                »
                »
                »
                »
                »
                »
                »
                9 лет назад, # ^ |
                Rev. 2   Проголосовать: нравится +55 Проголосовать: не нравится

                Кстати, когда я спросил по поводу ограничения на длину выражения, я получил ответ

                Ограничения разумны

                Давайте теперь во всех задачах так писать, пусть участники сами гадают?

        • »
          »
          »
          »
          »
          9 лет назад, # ^ |
            Проголосовать: нравится 0 Проголосовать: не нравится

          Возможно, но нужно чуточку везения. У меня метод Симпсона с 10^5 точек и Питоновским compile-eval зашёл за 0.9 секунд в худшем случае.

      • »
        »
        »
        »
        9 лет назад, # ^ |
        Rev. 2   Проголосовать: нравится +8 Проголосовать: не нравится

        1) Что мешает сделать сделать пробный тур на неделю на гробозадачах(даже с отсутствием нормального решения у жюри)?

        2)Для этого придумали анонсы за несколько дней.

        3)После изменения правил ранжирования, не понадобится

        P.S. Когда программируете, тоже каждый раз свою сортировку пишете и игнорируете уже накопленный человечеством опыт?

        • »
          »
          »
          »
          »
          9 лет назад, # ^ |
          Rev. 2   Проголосовать: нравится +16 Проголосовать: не нравится

          1) Хорошо, я понял предложение про пробный тур, не буду его дальше оспаривать, в нем, определенно, есть зерно.

          2) Анонсы за несколько дней были, но возможность прихода в любой момент надо оставить. Это — данность, в условиях которой надо разрабатывать метод, а не переносить ограничения метода на данности.

          P.S. Все же отсортировать данные — это намного более узкая задача, чем провести олимпиаду, так что аналогия строится с трудом. Эволюция — это все-таки всегда изменения чего-то уже существующего, когда-то получается лучше, когда-то хуже, лучшее берется с собой, худшее выбрасывается. Если всегда брать только существующее хорошее, новое хорошое сделать точно не получится, а вот если если если существующее хорошее изменять, может получиться что-нибудь новое и годное. А может и не получиться, и тогда надо эволюционировать дальше.

          • »
            »
            »
            »
            »
            »
            9 лет назад, # ^ |
            Rev. 2   Проголосовать: нравится +40 Проголосовать: не нравится

            Такое откровенное желание использовать свои эволюционные велосипеды и ставить эксперименты на живых людях порождает нехорошие мысли о первоочередным нежелании потерять хорошую маржу от спонсора олимпиады, нежели провести мероприятие по вменяемым правилам и процессам, которые уже прописаны "потом и кровью" других людей.

      • »
        »
        »
        »
        9 лет назад, # ^ |
          Проголосовать: нравится +14 Проголосовать: не нравится

        1) Нельзя дать одну из задач, которая будет ТЛится? Хотите сказать, что нереально было заранеее сделать так, чтобы в субботу не было этих жуткий очередей?

        2) А это проблема уже этого человека. Вы озвучили точное время олимпиады, он заметил поздно, следовательно его проблемы. Так бы вы избавились как минимум от читеров в топе. Хотя если вас устраивает текущая ситуация, то можете дальше раздавать призы тем кто понял, что вы не сможете доказать факт списывания.

        3) У вас было 2 недели, нельзя было что-то придумать? Я предлагаю, что раз вы берете полмесяца на то чтобы что-то там сделать (слетать на отдых на зп с 1С) то вполне возможно, если очевидно что человек списывал, проверить вручную

        Я считаю, что напарываться второй раз подряд на одни и те-же ошибки значит пофигистически относится, в данном случае, к делу, которое вы делаете.

        • »
          »
          »
          »
          »
          9 лет назад, # ^ |
            Проголосовать: нравится -17 Проголосовать: не нравится

          2) Это как-то очень похоже на разговор слепого с глухим. Я вам говорю "Согласно задаче, необходимо, чтобы человек мог начать участвовать в любой момент". Вы говорите "Нахрен задачу, переделай ее под методы, которые у тебя есть". Так не годится, это не конструктив. Методы должны определяться задачей, не наоборот.

          Еще одна вещь заключается в том, что я не вижу смысла сделать точно такой же контест, какие уже есть (5 часов, сортировка ACM). Чеcтно, лучше тогда вообще этим не заниматься. Однако если олимпиада не будет проведена, то никто ничего не выиграет, но кто-то, возможно, не получит мероприятия, которое ему понравилось. Если вы считаете, что уровень организации у нас отвратительный — предлагаю не участвовать или присоединиться к жюри для следующего раза, чтобы понять, как это реально работает, а не кидать популистических обвинений. Хотите, например заняться проверкой 27000 решений на списывание вручную? Мне даже интересно, за n^2 Вы это будете или придумаете что-нибудь более оптимальное.

          3) Согласно правилам, с которыми Вы согласились при участии в олимпиаде (http://ejudge.tproger.ru/docs/rules.pdf): 7.3: Оргкомитет обязуется подвести итоги олимпиады (обозначить место каждого участника) в течении двух недель после окончания олимпиады Так что претензии по этому поводу вообще не уместны.

          • »
            »
            »
            »
            »
            »
            9 лет назад, # ^ |
              Проголосовать: нравится +16 Проголосовать: не нравится

            Получается, что поставленная задача (которая, кстати, не совсем точно сформулирована, но пусть мы исправили формулировку) имеет больший приоритет, чем задачи "честный участник имеет очень высокий шанс победить в олимпиаде", "нечестный участник не имеет шанса обойти участника намного сильнее себя". Более того, последняя вообще противоречит поставленной, независимо от методов выполнения. Однако, эти две задачи входят в понятие "олимпиада"(независимо от области применения), а ваша задача взята с потолка. Поэтому, в следующий раз лучше в правилах уточнить данный аспект крупным шрифтом либо заменить название "олимпиада по программированию" на что-нибудь типа "олимпиада по тому, как набирать больше баллов"

          • »
            »
            »
            »
            »
            »
            9 лет назад, # ^ |
              Проголосовать: нравится +36 Проголосовать: не нравится

            Недавно был VK Cup Уайлд-Кард раунд 2, где надо было написать программу, которая палит списывание, за неделю. У победителя точность очень высокая около 87 процентов, начиная с какого-то 15 или 20 места валится уже больше половины тестов. Сотня файлов проверяется за несколько миллисекунд. MikeMirzayanov обещад разослать антиплагиат всем командам сайтов вроде timus, spoj, topcoder, codechef. Попросите у него, качните все файлы и проверьте, думаю, результаты будут немного неожиданные :)

          • »
            »
            »
            »
            »
            »
            9 лет назад, # ^ |
              Проголосовать: нравится +16 Проголосовать: не нравится

            Верите, что к формату и процессу не было бы претензий (вне зависимости от того ACM style или нет), если бы в итоге всё мероприятие с точки зрения вполне вменяемых людей, которым не всё равно, не превратилось бы в фарс? То, что вы напридумывали просто не работает. И уши всех проблем торчат из сильной недооценки сложности проведения мероприятия, которое вы придумали. Мотали бы на ус критику, чтобы в будущем не заниматься такой чушью.

          • »
            »
            »
            »
            »
            »
            9 лет назад, # ^ |
              Проголосовать: нравится +58 Проголосовать: не нравится

            Так а зачем вы берете задачи для ACM соревнования и делаете контест на 2 дня. Вот если бы вы сделали какую-нибудь смесь CTF и Challenge 24, было бы намного более соревнование по программированию.

            Тем более, что и задачи у вас, мягко сказать, не новы.

            Это не очень круто, когда у вас такой распиаренный ресурс, вы проводите олимпиаду, а многие, кто никогда не сталкивался с олимпиадами, будут думать, что олимпиады все такие, и в них одинаковые задачи, в которых надо глупость сделать.

            Я, конечно, понимаю, что вам главное отработать свое, но нужно поставить себя на место участника и подумать, как сделать лучше. А вы только отмазываетесь, что и так все хорошо. Если уж у вас не получается удовлетворить участников, могли бы и со знающими людьми посоветоваться.

          • »
            »
            »
            »
            »
            »
            9 лет назад, # ^ |
              Проголосовать: нравится +19 Проголосовать: не нравится

            2) Если авторское по такой задаче не работает, то зачем нужно такое авторское. Если не можешь сделать нормально задачу, тогда меняй ее, очевидно же.

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

            Я не поленился и прочитал ваши правила : "Исключать участников из олимпиады без объяснения причины" "Жюри уведомляет, что это право будет использовано в отношении" Я уверен, что подозрений должно быть достаточно, но из-за отсутствия доказательств вы не удалили их. Хотя знаете, что они списали. Могли пойти по этим пунктам правил.

            А так вы нарушили вот эту строку "Результатом олимпиады является справедливое распределение участников"

            Там ниже, говорили про Антиплагиат, который писали в вкраунде2, довольно эффективный. Имелось ввиду, что за 2 недели, вы могли написать свой согласно спецификам и т.п., и нормально проверить.

            Я понимаю как это происходит на мероприятиях, где число участников меньше чем у вас, а так же на очных. Я понимаю, что времени на организацию, составление и тому подобное уходить в разы и в разы больше, чем само время проведения. Но также я понимаю, что можно все сделать качественно, и если ты не уверен в чем то, обратится к людям, которые опытнее тебя и спросить у них совета. А не делать это на догадках.

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

            3) Незнаю зачем вы мне дали пункт на это. Я сказал, что за 2 недели можно было нормально проверить решения, а не обвинил, что мы ждали 2 недели результатов.

            • »
              »
              »
              »
              »
              »
              »
              9 лет назад, # ^ |
                Проголосовать: нравится +21 Проголосовать: не нравится

              Такое чувство, будто в тред набежали какие-то обиженки и начали минусить адекватные комменты.

  • »
    »
    9 лет назад, # ^ |
    Rev. 2   Проголосовать: нравится +5 Проголосовать: не нравится

    2) Альтернатива очень простая. Надо сделать нормальную неточку, по которой можно достаточно эффективно ранжировать участников. Пример — последняя задача с прошлого года, но там (так как я не увидел таки разбора/авторского решения) было ощущение, что эти тесты жюри проходились чуть ли не вручную, да и там побеждал тот, кто угадывал, каких тестов больше.

    Задача про брейнфак, конечно, очень хорошая, но людей она не ранжирует (а ведь в анонсе говорилось про "последнюю сложную задачу"

    P.S. Как сделать так, чтобы когда я ставлю "2." оно не воспринималось как список с нумерацией (пример в правке)?

    • »
      »
      »
      9 лет назад, # ^ |
        Проголосовать: нравится +13 Проголосовать: не нравится

      P.S. Как сделать так, чтобы когда я ставлю "2." оно не воспринималось как список с нумерацией (пример в правке)?

      2\. Так

      2. Так

  • »
    »
    9 лет назад, # ^ |
      Проголосовать: нравится +8 Проголосовать: не нравится

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

    На hackerrank и topcoder, например, время по каждой задаче отсчитывается с момента первого открытия условия по данной задаче.

    • »
      »
      »
      9 лет назад, # ^ |
      Rev. 2   Проголосовать: нравится +17 Проголосовать: не нравится

      Вот выше уважаемый OSt уже говорил про "правила, прописанные потом и кровью". У конкретных метрик есть конкретные недостатки, и, казалось бы, в обсуждениях Codeforces они уже не раз вскрывались — вспомните хотя бы многочисленные посты про попытки урезонить ситуацию с двойными аккаунтами.

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

      Если я правильно понял, у Dmitry_Torba была вполне конкретная, заранее намеченная цель — дать возможность занять высокое место в том числе тем участникам, которые присоединились к олимпиаде после её начала. Однако уже на этапе постановки этой цели нужно было думать о том, какие возможности для спекуляций она может открыть. В данном конкретном случае суть та же, что и выше — если шансы участника на победу не уменьшаются с течением времени, то в любом случае выгодно сдавать решения в самый последний момент, возможно, предварительно прозондировав тесты с других аккаунтов. Это данность, логичное следствие выбранных условий, от этого никуда не деться. Внимание на этом я заостряю, поскольку вижу выше следующие слова:

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

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

      И ещё.

      Еще одна вещь заключается в том, что я не вижу смысла сделать точно такой же контест, какие уже есть (5 часов, сортировка ACM). Чеcтно, лучше тогда вообще этим не заниматься. Однако если олимпиада не будет проведена, то никто ничего не выиграет, но кто-то, возможно, не получит мероприятия, которое ему понравилось.
      

      Вы правда так думаете? Вам правда кажется, что после соревнования участники запомнят его формат, а не предложенные задачи, идеи из решений, героев из условий, наконец? Если бы over9000 турниров, проводящихся по правилам ICPC, были бы так уныло похожи один на другой, как вы описываете, олимпиадное сообщество давно бы померло со скуки.

      Ваша олимпиада запомнится брейнфаком, интегрированием, выводом "1 1 N". И уверяю вас, она бы запомнилась всем этим независимо от того, по каким правилам она бы проводилась.

      Да, и последнее.

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

  • »
    »
    9 лет назад, # ^ |
      Проголосовать: нравится +63 Проголосовать: не нравится

    По поводу ранжирования. С учетом специфики задачи G, можно [в следующий раз] добавить критерий — суммарная длина выводящихся программ G.1-G.8. Это довольно популярная практика на задачах с интерпретаторами/регулярными_выражениями/грамматиками. И участников распределяет неплохо, и списывание не помогает, и можно получить хороший результат, даже если писать не с начала олимпиады. Ну и это интересно, в конце концов, как мне кажется — пытаться придумать, как можно пару символов сэкономить.

    По поводу прошедшей олимпиады довольно много написано, но все-таки еще раз упомяну про условия. Постарайтесь делать их как можно понятнее и однозначнее — будет гораздо меньше кларов и недовольных участников, все сэкономят время. Можно (нужно) давать их читать заранее абсолютно не занимавшимися этими задачами людям, чтобы они подтвердили, что все правильно понимают. И еще очень рекомендуется, чтобы авторское решение работало на всех тестах, разрешенных условием задачи. Например, если нет ограничения на размер входных данных — то и авторское решение должно уметь работать с набором данных произвольной длины.

»
9 лет назад, # |
  Проголосовать: нравится -42 Проголосовать: не нравится

»
9 лет назад, # |
  Проголосовать: нравится +80 Проголосовать: не нравится

Я просто оставлю это здесь. Читерить это ведь тоже соревнование

  • »
    »
    9 лет назад, # ^ |
      Проголосовать: нравится +56 Проголосовать: не нравится

    Это, видимо, новое слово в соревнованиях по спортивному программированию :)

  • »
    »
    9 лет назад, # ^ |
    Rev. 2   Проголосовать: нравится +36 Проголосовать: не нравится

    я бы еще спросил, почему они не предупредили, что соревнование для тех кто искусней читерит.

    А так, ему уже просто ответить нечего вот и все. А признавать, что олимпиада получилась провальной из-за косяков в организации (и лично его косяков) признать не может

    • »
      »
      »
      9 лет назад, # ^ |
        Проголосовать: нравится -9 Проголосовать: не нравится

      Могу.

      "Провальная" — это наличие пары десятков недовольных? Тогда да, олимпиада провальная.

      "Провальная" — это когда мероприятие прошло согласно заранее оговоренным правилам? Тогда нет, олимпиада не провальная.

      Я готов признать правильность чего угодно, все зависит от определения.

      • »
        »
        »
        »
        9 лет назад, # ^ |
          Проголосовать: нравится +24 Проголосовать: не нравится

        Пары десятков? Сейчас может и осталось пару десятков. Остальные забили две недели прошло всеже. Да и понятно, что ничего не изменить было. А теперь еще и понятно, что следующая паралимпиада будет такой же. Ну чтож, всегда хотел поучаствовать с помощью подобной хитрости.

        Вот мне лень их искать и читать честно. В ваших правилах есть пункт, про то что нельзя создавать второй аккаунт, нельзя брать решения у других людей или подобное? Если да, тогда по каким правилам она была проведена? Если нет, тогда я положу руку на лицо.

        • »
          »
          »
          »
          »
          9 лет назад, # ^ |
            Проголосовать: нравится -13 Проголосовать: не нравится

          Посоны, хорош форсить термин "паралимпиада" в отношении этого контеста, потому что нельзя провести никакую адекватную аналогию с настоящими паралимпийскими играми.

      • »
        »
        »
        »
        9 лет назад, # ^ |
          Проголосовать: нравится +5 Проголосовать: не нравится

        Как минимум, в этом посте отписалось больше пары десятков участников. Поэтому да, олимпиада провальная во всех смыслах.

  • »
    »
    9 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    Соревнование читеров, победителю заява в прокуратуру и курорт в Магадане

  • »
    »
    9 лет назад, # ^ |
    Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

    По-моему, это вырвано из контекста. Не уверен, лень искать. Но в общем идея в том, что всех проверяют, проверяют одинаково, значит шансы у всех равные.

    А еще собеседник сказал, что "Ну можно так списать, что будет вообще никак не поймать", а я сказал, что это примерно то же самое, что и заново решить задачу, и что если все будут таким образом обманывать — вперед, пусть пытаются.

    • »
      »
      »
      9 лет назад, # ^ |
        Проголосовать: нравится +49 Проголосовать: не нравится

      Знаете, в генераторе случайных чисел тоже шансы у всех равные, вот бы и выбрали случайную перестановку. И сервера бы не пришлось нагружать.

    • »
      »
      »
      9 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится

      Учитывая размер нашего диалога, проблема совсем не в том, что лень искать

»
9 лет назад, # |
  Проголосовать: нравится -73 Проголосовать: не нравится

А мне олимпиада очень понравилась! Все, кроме интеграла, г6, г7, г8 — задачи на уровне "прочитай, напиши". Просто условия задач надо читать внимательно:) Что касается интеграла и "невозможности сдать его с 1 попытки", то кажется, что 5 попыток должно было хватать. Ну и еще попытку можно было потратить в пароле, где неочевиден был тест с пробелом. Чтобы не делать попыток по задаче на интерпретатор, нужно было сначала зарешать все на брейнфак и оттестить в своем интерпретаторе. Еще можно прочитать полно комментариев вида: "Сервер работал медленно в первый день". И что?) Вы условия задач то читали?) Это же изи футболочка, не нравилось, так не участвовали бы. И если вы не можете за три секунды нащелкать и понажимать альт-таб, то это не повод обвинять других в читерстве(не спорю, кто-то читерил. Но где гарантия, что на тех же cf раундах люди не читерят?) Я вообще не понимаю, как можно было для такого несложного проблемсета заводить фейковые аккаунты и решать с них... Порешайте лучше тимус и научитесь писать стресс-тест, если вы этим занимались.

Большое спасибо организотаром! Постарайтесь пожалуйста все-таки учесть все жалобы к следующему году и сделать более адекватную системк оценки и стабильную систему. Ну и задачек пару пожестче:)

  • »
    »
    9 лет назад, # ^ |
      Проголосовать: нравится +48 Проголосовать: не нравится

    Это же изи футболочка

    Теперь футболка официально зашкварена, что тут непонятного?

  • »
    »
    9 лет назад, # ^ |
    Rev. 2   Проголосовать: нравится +3 Проголосовать: не нравится
    Что касается интеграла и "невозможности сдать его с 1 попытки", то кажется, что 5 попыток должно было хватать.
    

    Но согласитесь, что вероятность сдать эту задачу с первой попытки очень мала.

    Чтобы не делать попыток по задаче на интерпретатор, нужно было сначала зарешать все на брейнфак и оттестить в своем интерпретаторе.
    

    Ммм... и как это помогло бы решить проблему с 13-м тестом, где приходит на вход число из 24 цифр? Или как это помогло найти тот косяк, что утром в субботу переменная могла хранить максимум 255, а потом смогла хранить 30000. Все задачи на BF++ я сдал в субботу, а эти два теста в самом интерпретаторе смог сделать уже только в воскресенье, после того как попробовал вписать try/catch и скачал новый файл с условиями.

    • »
      »
      »
      9 лет назад, # ^ |
      Rev. 3   Проголосовать: нравится -40 Проголосовать: не нравится

      А в чем проблема с 24 цифрами? О_о я даже не думал о размере тестов, считывал в лонг лонг, брал по модулю 255 кажется.. да и подобные баги стресс-тестом уж точно должны находиться, задача же без ограничений на входные данные!

      Насчет сдачи с первой попытки — стесс-тест + 5 попыток + небольшой опыт + попихать на худой конец хоть ради майки — должно решать все проблемы. ну да, с первой и для меня нереально. Но казалось бы, таким как мы надо привыкнуть, что "25 футболок" получат ребята покруче, а мы — то, что останется.

      • »
        »
        »
        »
        9 лет назад, # ^ |
          Проголосовать: нравится +31 Проголосовать: не нравится

        Я могу ошибаться, но в C# на котором пишет TDK, при считывании числа превышающего long, выдается RE. В плюсах же считает какой-то треш.

        А так как тест больше ничего и не подразумевал, то он тупо валил считывание на определенных языках. Ничего выводить в том тесте не надо было и т.п. Я понимаю, что предупреждали о преимуществе использования некоторых языков, но разумно было думать, что это скорее встроенный функционал типа eval в питоне. А не такой бред как 24 цифры в числе.

      • »
        »
        »
        »
        9 лет назад, # ^ |
          Проголосовать: нравится +3 Проголосовать: не нравится

        А в чем проблема с 24 цифрами?

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

  • »
    »
    9 лет назад, # ^ |
      Проголосовать: нравится +1 Проголосовать: не нравится

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

    • »
      »
      »
      9 лет назад, # ^ |
        Проголосовать: нравится +35 Проголосовать: не нравится

      Ну ты сам виноват, что принимаешь участие в таких трешовых олимпиадках. Вроде с самого начала было очевидно, какого качества будет это мероприятие.

      • »
        »
        »
        »
        9 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится

        За все то время, что я занимаюсь спортивным программированием, я не выиграл ни одной майки (ну если не считать майки за асм, которую я получил, сказав, что наша команда якобы попала в топ-15) и это была отчаянная попытка восполнить пробел=)

        • »
          »
          »
          »
          »
          9 лет назад, # ^ |
            Проголосовать: нравится +12 Проголосовать: не нравится

          Как-то у вас всё печально. Я недавно только фиолетовый и у меня уже четыре футболки, с этого соревнования будет пятая.

        • »
          »
          »
          »
          »
          9 лет назад, # ^ |
            Проголосовать: нравится -15 Проголосовать: не нравится

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

»
9 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Могу сказать об одном, прошел год, а кроме как поменянных условий задач ничего и не изменилось. Как в прошлом году были очереди на проверку в +1000, так и в этом году. Надежды на исправления хоть каких-нибудь косяков оказались напрасными (не учитываю что это было исправлено ночью, т.к. об этом косяке было и ранее известно). Но все же задачи были интересными, да и не было задач в которых вывел "NO" и у тебя 1/3 тестов пройдено.

  • »
    »
    9 лет назад, # ^ |
      Проголосовать: нравится +5 Проголосовать: не нравится

    Как же G6(палиндром которая), где нужно было вывести 0 или 1. При выводе 1 она получала 28 из 40

»
9 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Вспоминается воронеж. Гугл подсказывает что там последний раз проводили олимпиаду в 2009-ом году :)

»
9 лет назад, # |
  Проголосовать: нравится +13 Проголосовать: не нравится

Отпишусь и я.

На фоне тотальной критики все-таки хочется поблагодарить организаторов. Косяков было, конечно, немало, но, тем не менее, очевидно, что организаторы старались, потратили немало времени. Каждый сам себе уже решал, принимать участие или нет.

Но, благодаря, хочется отметить также несколько пунктов, которые меня поразили. Мне кажется, такое не должно быть ни в какой олимпиаде, как бы она плохо/хорошо не была организована.

Собственно, в чем суть. В задаче "G.8 Сортировка" в условии было четко указано, что на входе не более 100 чисел. Я решил эту задачу тем способом, который мне первым пришел в голову — bubble sort с фиксированным кол-вом итераций — 128, что с запасом должно хватать для входных данных. Но, не хватает. Час дебажу свое решение на брейнфак++ :) Понимаю, что все верно. На клары не отвечают. Уже начинаю догадываться, что есть тесты, где на входе больше 100 чисел. Увеличиваю константу итераций до 254 — отсылаю, accepted. На этот момент у меня все задачи, кроме D, были сданы с плюса за 25 секунд (да-да, я открыл сразу все вкладки и наклацал "отправить"). На этот момент я еще не мог найти у себя багу в D (на самом деле, бага таки была у меня), поэтому предположил, что могут быть опять кривые тесты, написал в ВК организатору с детальным описанием проблемы. И тут ответ, который меня и поразил:

"Ну да, никто не ожидал что там будут писать пузырек. Я могу изменить условия, если Вам вдруг станет легче от этого."

Ну, блин. Это хорошо, что никто не ожидал, что будут сдавать пузырек. Но является ли это предположение достаточным, чтобы входные данные не соответствовали ограничениям, указанным в условии? Серьезно? К тому же, зная об этой проблемы, не менять условия (условия так и остались с ошибкой до конца контеста)?

Но при этом надо признать, что организатор ответил ВК очень быстро, а также после моих возмущений на ответ, что "Никто не ожидал, что будут писать пузырек." согласился сделать реджадж. Правда, реджадж был сделан как-то криво. Не знаю, как там делается реджадж, но у меня так и осталась лишняя попытка на задачу G.8. Но на этот момент я уже нашел багу в задаче D и понял, что шансов попасть в пятерку нет, поэтому больше претензий предъявлять не стал.

  • »
    »
    9 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

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

  • »
    »
    9 лет назад, # ^ |
      Проголосовать: нравится +8 Проголосовать: не нравится

    "Ну да, никто не ожидал что там будут писать пузырек. Я могу изменить условия, если Вам вдруг станет легче от этого."

    Он не сказал каких решений они ожидали?

    • »
      »
      »
      9 лет назад, # ^ |
        Проголосовать: нравится +8 Проголосовать: не нравится

      нет, но я и не уточнял, так как меня сам факт поразил. Что, мол, давайте напишем в условии "не больше 100 чисел на входе", но так как никто наверняка не отправит bubble sort, то можно и 200 чисел на входе дать. И условие исправлять не будем до конца контеста, хотя о проблеме знаем.

»
9 лет назад, # |
  Проголосовать: нравится +16 Проголосовать: не нравится

Вспомнил ещё один забавный ответ или я просто оставлю это здесь, дубль 2. В тесте был интеграл от функции x^x с отрицательной нижней границей

»
9 лет назад, # |
Rev. 3   Проголосовать: нравится +16 Проголосовать: не нравится

Прочел статью. Добавлю от себя лишь то, что разбор был немного упоротым. Я честно его ждал неделю и удивился, увидев в задачах на BF++ лишь строчки безо всяких пояснений алгоритмов (Причем авторские решения были довольно сложны для понимания). К остальным задачам никаких претензий не было, разве что можно было хотя бы натолкнуть на ОПН в задаче на интегрирование (Не все ж Питон знают). Но не суть. Я скажу честно, писал олимпиаду в диком угаре (мы тогда "Пилу" смотрели и считали ляпы :D) и задачи на BF++ действительно т*****ли мне мозг, но в целом, они мне понравились.

Кстати: в комментах был пост о том, что кто-то сдавал задачи на BF++ следующим образом: через cin считывались данные, обычным C++ формировался результат, и через cout выводилась прога, которая просто устанавливает нужные значения в ячейках и выводит. Мораль такова: все, что не запрещено, то разрешено.

Отвечу на вопрос в свой адрес в посте: лично я тестил, просто я плохо вижу узкие места (из-за этого почти на всех контестах я ловлю бревна на ровном месте), но стараюсь работать над этим. Уверен, что многие из топа, с разницей до тысячи секунд также упорно тестили, прежде чем отправлять. Да и вообще, тут не в контесте дело — перед отправкой не тестить свою прогу могут позволить себе лишь слишком уверенные в себе кодеры, в независимости от самого контеста (Хотя, может я и ошибаюсь).

О результатах. Я понимаю, что freeze-time обычное дело, но почему-то я даже не подумал, что он будет в этой олимпиаде. И во время этого фризтайма я еще получал футболочку с 1050 баллами. Какого же было мое разочарование, когда в окончательных результатах я обнаружил себя на второй строчке среди тех, кто в призы не попал:D.

Итог: для меня самый провальный пункт олимпиады — система рейтинга. Чем она вызвана, для меня остается загадкой. Но как отличный шанс получить футболочку с бубном — самое то. Пусть я и не получил футболку, но свою долю фана я получил с лихвой. А большего лично мне и не надо.