Автор MikeMirzayanov, история, 8 лет назад, По-русски

Сегодня, 25-го апреля в 18:00, начнется VK Cup 2016 - Уайлд-кард раунд 2.

Участникам раунда будет предложено максимально продвинуться в решении одной сложной и необычной задачи. Официально в этом раунде смогут принять участие команды чемпионата VK Cup 2016, которые прошли в Раунд 2, но не оказались среди тех топ-100 лучших по его результатам, кто проходит в Раунд 3. Кроме того, этот раунд будет открыт для всех желающих для неофициального участия вне чемпионата. Зарегистрироваться на раунд можно будет в любое время пока он идет.

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

Удачи!

UPD 1: К сожалению, выяснилось, что большинство текущих тестов были недостаточно разнообразны и не покрывали различные сценарии работы тестирующих систем. Тесты в системе были обновлены, все решения будут перетестированы. Возможно, процесс перетестирования займет существенное время. Кроме того, была обновлена функция начисления баллов (её монотонность сохранена). По этой причине порядок начисленных баллов уменьшился. В условие добавлено ограничение на количество попыток (до 20000). Ознакомьтесь с обновленным условие задачи для выяснения подробностей.

UPD 2: Системное тестирование завершено. Поздравляем победителей! Напоминаем, что лучшие 20 команд будут приглашены в Раунд 3, который начнется 7 мая в 18:05.

UPD 3: Тестирование завершено! С учетом дополнительного тестирования, следующие команды завоевали право участия в Раунде 3:

  1. Geisterkirche, aan93
  2. komendart, zloyplace35
  3. Arthur, Ferathorn
  4. slava.sh
  5. Lo_R_D, vas.and.tor
  6. mHuman, stas99
  7. pashaD4RW1N, krock21
  8. Kaban-5, pavel.savchenkov
  9. magnickolas, sslotin
  10. BotanIQ, agsagds
  11. sergileon, Auster
  12. reconst, Raven_gg
  13. Naduxa, DimonK
  14. Infoshoc
  15. KingArthur, awoo
  16. WiBk, alex700
  17. Jace_Beleren, Jovfer
  18. diko, Omrigan
  19. jvmusin, NikitaMikhaylov
  20. MrDindows, I_love_Tanya_Romanova
  21. nijikilling, maxplus
  22. aytel, kokokostya
  23. kuzmichev_dima, Timur_Keks
  24. tyamgin, Sokolov
  25. Mogby
  26. alex_chukharev, dashakisik
  27. alex.tsitsura
  28. WasylF, stostap
  29. passick, yurboss
  • Проголосовать: нравится
  • +97
  • Проголосовать: не нравится

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

Это мой первый Уайлд-кард раунд,поэтому,пожалуй,спрошу:"Раунд будет рейнтигованым?".

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

Как можно отослать архив ?

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

    Вы можете выбрать в качестве языка решения C++ Zip / Java Zip

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

      Что значит Ожидается корректный ZIP-архив ? Какой архив считается корректным ?

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

Как генерируются/откуда берутся входные данные?

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

    Данные взяты из настоящих данных тестирования Codeforces, используются попытки по задачам идущих контестов и задач из архива. При экспорте использовались промежутки времени продолжительностью в 1-6 часов. В качестве тестов к этой задаче мы старались подобрать такие времена, которые соответствуют различным сценариям тестирования (во время соревнования, дорешивание, проверка множества авторских решений и т. д.).

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

      1000 тестов на задачу — не очень похоже на реальные архивы.

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

      А разве в реальности, если решение падает на тесте, то остальные тесты не должны игнорироваться?

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

        "В реальности", как правило, проверка ведётся на всех тестах до первого теста, на котором решение упало, дабы как-то сепарировать причину падения (чисто для статистики, надо полагать) и для демонстрации участнику прогресса/регресса по задаче (не принёс ли фикс бага какой-то другой баг).

        А вот тесты после того, на котором упало — да, обычно игонорируются, (особенно в случаях, когда правила ACM)

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

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

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

Прочитал условие, интересует 2 момента:)

1) это первая интерактивная задача на КФ (как мне кажется), стоит ли ожидать их на грядущих контекстах?)

2) если решения участников планируется использовать для ускорения тестирования на КФ, то зачем такое большое ограничение на количество задач?

UPD: наверно большое количество задач будет имитировать режим дорешивания.

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

Что означает в семпле в выходных данных два подряд идущих -1 : -1 -1 ? Как вывести мое желание не тестировать ни одно решение ни на каком тесте ?

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

    И как понять, что все вердикты в данном тике были получены от интерактора ?

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

      каждый тик вам приходит список вердиктов накопленных с последнего тика, список заканчивается строкой "-1 -1"

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

        Допишите, что надо выводить "-1 -1", если нет намерения ничего тестировать.

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

Where is the tutorial for round 2 ?

Moscow time is not UTC, by the way.

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

##########################################

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

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

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

    Ну вообще, и та и другая проблема должна решиться с появлением пакета для локального тестирования.

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

Подскажите, правильно ли я понимаю условие:

Считается, что решение протестировалось целиком, если оно было протестировано либо на всех тестах задачи, либо, если задачи решена не полностью, протестировано на всех тестах до первого вердикта RJ (включительно).

Пример: Задача решена не полностью, проходит тесты с 1 по 5, на 6 тесте валится. Пусть, если бы задача проверялась на тестах 7-10, то завалилась бы на 7, 8, 10, а на 9 бы прошла. Тогда имею ли я право проверять задачу например в таком порядке (метка (x) означает, что решение не прошло тест): 9, 5, 3, 7 (x), 1, 2, 6 (x), 4?

В итоге, как и требуется (если я правильно понял требования), задача протестирована на всех тестах вплоть до первого RJ (а именно 1, 2, 3, 4, 5, 6).

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

    Интуиция подсказывает, что авторам обычно выдают вердикт в духе RE#x, где х — первый тест, не пройденный решением, так что если решение завалилось на 7ом, проверять тесты после 7го не обязательно, но убедиться в том, что все до 7го проходит, надо

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

      Хотелось бы услышать однозначный ответ организаторов на этот счёт.

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

        А в чем там собственно вопрос и неоднозначность? Вроде как это условие весьма четко сформулировано.

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

          Что понимается под фразой "протестировано на всех тестах до первого вердикта RJ"? На всех тестах по порядку от одного до текущего или на всех тестах от того, с которого начал участник и до текущего? Конкретнее: если решение упало на 7 тесте, должно ли оно быть протестировано на тестах 1-6? Если второе, то важен ли порядок тестирования?

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

            Очевидно, на всех тестах по порядку их нумерации, а не того, как вы скармливаете их инвокерам.

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

              И почему это должно быть очевидно?

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

                Многолетний олимпиадный опыт подсказывает =)

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

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

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

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

              Да, именно так.

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

    Вы можете тестировать в любом порядке, главное, чтобы решение было протестировано на всех тестах до первого RJ в порядке нумерации тестов. Например 0-OK, 1-OK, 2-OK, 3-RJ. В каком порядке вы получили эти вердикты, и получили ли вы лишние вердикты для следующих тестов — неважно.

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

Слишком много -1

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

Можете задать какие-то ограничения на количество решений, которые программа получит в ходе одного теста, и на количество тактов до последнего принятого решения? Заранее спасибо =)

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

Жюри может запостить сэмпловое решение, которое набирает хотя бы один балл? Стыдно, но мы что-то не можем разобраться с форматом взаимодействия с системой (при том, что фидбэк приходит спустя ~20 минут).

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

    3 основных момента (у меня валилось на 3ем):

    1. конец списка новых задач помечается -1;

    2. конец списка вердиктов помечается -1 -1

    3. в конце вашего вывода обязательно нужно вывести -1 -1, после чего сделать flush

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

Is this round rated or unrated?

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

Задачи и решения — это одно и то же, или нет? Может быть несколько разных решений на одну задачу?

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

    Да, может. Каждая посылка имеет свой id который равен колву посылок что произошли раньше, и id задачи на которую отправлена. В первом примере это видно

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

    Задача и решение — разные вещи. Люди отправляют решения задачи, а система определяет, прошло ли решение тесты или нет.

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

Добавьте возможность отсылать несколько файлов на Go, пожалуйста.

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

Написал решение, дабы проверить ввод-вывод

Временно отключена возможность посылать решения VK Cup 2016 — Уайлд-кард раунде 2.

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

Давайте поможем Даше провести VKCup...

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

Второй день мучаюсь с решением на Java 8 ZIP. Только что посмотрел Статус и не смог найти ни одного решения с данной опцией, которое бы набрало больше 100 баллов после того как включили отмену выполнения после первого упавшего теста. Есть такая проблема или мне показалось?

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

    Я думаю, что интерактор для джавы, считает вместе с временем участника еще и частично свое время, я засекал суммарное время между моментом времени как я отвечу flush на очередной запрос, и приму первое число из следующего запроса (это я считал за время, которое работает решение жюри). И для второго теста ассерт срабатывает, решение жюри съело 15 секунд, мое решение съело менее 6.2 секунд (около посылки показано ~12секунд)

    PS: Я могу конечно же ошибаться, но все же лучше, чтобы жюри проверили свой интерактор, и прокомментировали, что все ок/не ок на их стороне.

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

Решение на 2000 баллов со всех тестов это ведь шедулер жури? Может, его опубликовать как пример?

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

Когда будет доступен пакет для локального тестирования?

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

Приношу извинения команде Codeforces за свои злые слова в сторону скорости тестирования. Писать шедулер — не мешки ворочить, как оказалось...

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

Не знаю, что не так с моим кодом, но решение с printf("%d %d\n", -1, -1); набирает положительные баллы, а решение с printf("-1 -1\n"); набирает ноль, из-за нехватки памяти. Да... Это какая-то мистика...

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

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

Что значит "ТЕСТЫ пронумерованы в порядке их появления"? В порядке появления где?

Если я начинаю тестировать с последнего теста, то он останется под последним номером?

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

    Странный вопрос. Тесты пронумерованы от 0 до testN - 1, где testN — количество тестов задачи. А решения пронумерованы с нуля, в порядке появления. Это же логично.

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

Я вижу, что многие застревают на втором тесте по TL. Есть ли кто-нибудь, кто нашёл причину?

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

    Причина: этот тест самый большой в наборе. Используйте быстрый ввод/вывод.

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

У меня одного интерактор работает безбожно медленно, а потом выдает страшные цифры, вроде этих: ok Finished in 7197110 ms ?

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

    Эти цифры означают, что ваш шедулер получил вердикты по всем посылкам за 7197110 миллисекунд — 719711 тиков.

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

      Все равно не знаю как на Linux, на Windows он работает дичайше медленно. Или интерактор работает совсем точно? другими словами, реально "ждет"?

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

Что значит вердикт IDLENESS_LIMIT_EXCEEDED?

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

    Обычно это означает бездействие программы (например, ожидание ввода с клавиатуры)

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

Спасибо, что не за день до конца раунда.

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

Семплы совпадают (будут совпадать) с первыми 10 тестами в системе?

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

Можно ли ожидать, что финальные тесты качественно не будут сильно отличаться от текущих?

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

10 тестов в системе совпадают с тестами из архива с интерактором? Есть ощущение, что нет, т.к. локально интерактор тестирует все без ошибок, на сервере же WA 3. Или может отличается то, как работает интерактор?

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

    Такая же проблема! Прошу обратить на это внимание. Все мои посылки до обновления работали и проходили 20 тестов, сейчас же wa3 и никаких идей, что бы это могло быть.

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

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

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

    Поддерживаю вопрос. Локально всё работает, на сервере memory limit.

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

Когда будет обновлённый локал раннер? За час до конца?

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

В архиве с интерактором второй(а может и не только второй) тест багнутый. Там в одной задаче 0 тестов. Надеюсь, на реальных тестах такого не будет:(

...

2000 40

2000 43

2000 49

2000 59

1000 29

2000 0 // вот тут

1000 54

2000 29

2000 34

1000 36

...

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

    Не проверял, но если это так, то мне все больше и больше нравится этот Уайлд-кард

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

    В коде интерактора есть проверка на это.


    if (testCount < 1) testCount = 1;
    • »
      »
      »
      8 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится

      Спасибо, значит я криворук, не заметил строчку

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

Стоит ли ожидать, что финальные тесты будут примерно аналогичны претестам по времени работы? Если нет, то что стоит ожидать? Очевидно, что решение, которое может протестить 20000 сабмитов, работающих по 1000 тестов каждый, невозможно написать, поэтому формальные ограничения из условия почти бесполезны и наверняка макстеста по ним нет.

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

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

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

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

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

        Будем тестировать на всех тестах.

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

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

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

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

      Например, сейчас в максимальном претесте (втором) 1 инвокер, 170 задач и всего 3011 посылок. Думаю, что в реальной жизни реальных сценариев Codeforces были ситуации с похожей структурой, но с в 2 или в 3 раза большим количеством посылок. Если эти случаи включить в финальные тесты, то подавляющее количество решений просто получит TL. К тому же, не зная ограничений, нельзя написать решение, которое всегда будет успевать отрабатывать, так как данные поступают в потоковом режиме и никак не узнать заранее количество посылок, которое придется обрабатывать.

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

    так нам никто не скажет ограничение на суммарное количество тестов по всем задачам? (хотелось бы увидеть число меньше 10 000 * 1 000 = 10 000 000)

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

Понимаю, что я наверняка немного отстал от событий (только сегодня появилось время посидеть над задачей). Есть вопрос, почему решение получает 100 балов? Никакого TLE или ML нету.

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

    Скорее всего вы не до конца тестируете решения.

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

      то есть?

      Я просто отправляю задачу кнопкой "Отослать".

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

        Имеется в виду не до конца тестируете посылки (из задачи).

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

          Все, понял, спасибо большое :) Жаль только, что поздно спросил.

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

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

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

Как думаете, насколько в этом году топ изменится?

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

    Думаю, очень сильно.

    Мое "топовое" решение теряет очков 200 при совсем незначительном изменении некоторых констант =)

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

      Можно код, пожалуйста? =)

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

        Я не топ, но вот такое решение набирает 3300 очков — сначала отсылаем по 1 тесту от всех нетестированных попыток, а затем все подряд у кого TL меньше, пока есть свободные инвокеры

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

          Это плохая черта нелинейной шкалы рейтинга, вводит в заблуждение. (До того как сделали реджадж было нагляднее, ИМХО) Мне кажется даже решения 3500 и 3300 на самом деле отличаются на качественном уровне.

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

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

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

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

А когда будет финальное тестирование?

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

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

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

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

    Такой рандом можно просто объяснить тем, что были тесты гораздо более толстые, чем тест #2 на претестах, и по сути, выжили лишь те решения, которые были быстрее. Если глядеть статус попыток, половина(UPD: видимо даже больше) имеет время 15000 мс. Вообще, я не в том положении, чтобы негодовать или не радоваться, но это довольно неприятно, когда нет нормального представления во время тура о том, какого размера будет самый тяжелый тест, ясное дело, что кейс с произведением максимальных чисел солюшенов и тестов выглядит непроходимым и на него нельзя ориентироваться.

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

      Более того, джаву кажется поставили в нереальные условия. Позже перепишу наше достаточно быстрое решение (как мне казалось) на плюсы, если будет дорешка. Более 15с может быть у плохих решений из-за не оптимальный стратегии. И у джавы, возможно у практически любого решения. Хочу сравнить например свое (джава/плюсы), у меня подозрения что 14 ТЛ тестов превратятся в меньшее количество. Наше 9 старое место получило именно столько ТЛ. Следующая серьезная заявка джавы — 21 место по-старому. Сейчас получили 68 и 67 место с примерно равными баллами, так что думаю у ребят ровно те же 14 ТЛ. Интересно посмотреть на таблицу без ТЛ за ввод...

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

      +1, не зря же мы с Kaban-5 выше пытались прояснить ситуацию с временем работы. В итоге за что боролись, на то и напоролись -- ограничений так и нет, много TL-ей, как можно было понять, что решение медленное, если оно на претестах работало адекватное время, непонятно. У нас правда на C++, но довольно громоздкое, есть константы, напрямую влияющие на время работы. В конце мы решили, что раз про финальные тесты ничего не известно, то не будем париться и оставим посылку с временем 10 секунд на 2 тесте.

      P.S. мы в английской ветке

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

        У нас я считал r * s * log (s) с маленькой константой и джавой. Если я не просмотрел багу. Где r количество посылок, s количество активных посылок — которые уже поступили, но еще не обработаны. Худший случай, синтетический, и то должен был бы уложиться в 10 секунд, но вычитать данные для худшего случая мне кажется не реально. Поэтому мы ориентировались на 2 тест как на макстест и оставляли запас.

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

          У нас видимо на каждом тике происходит операций с большой константой.

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

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

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

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

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

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

                Перечитал Ваше первое сообщение, согласен полностью. Макс тест, по-моему, не реально просто считать на си со всеми оптимизациями. Так что да, не на что ориентироваться. И многие решили что можно на 2 тест ±.

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

    Everything has changed again. Will we be updated when standings are final?

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

Добавьте, пожалуйста, возможность протестировать другие свои решения!!! Очень интересно сравнить:)

Для избежания высоких нагрузок на кф, можно просто ограничить кол-во попыток для участника в день:)

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

А на претестах работало максимум 9 секунд.


Интересно, а само решение Михаила Мирзаянова прошло бы финальное тестирование? Он ведь сам на Java пишет.

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

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

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

А решения внеконкурсных участников потестированы не были?

По-моему у меня остались баллы с предварительного тестирования и никого со здездочками в топе я не увидел

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

    Да, упустил этот момент. Конечно, сейчас запущу тестирование.

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

      Апеллировать по поводу нереального ТЛ для джавы бесполезно? Или можно придумать компромисс? Две команды из "топа" пострадали похоже.

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

        Более чем две.

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

          На джаве вроде всего 4 финальных попытки. Поправьте если ошибаюсь.

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

        Господа минусующие, а пояснить позицию?

        Все знают что джава медленнее? Да, но это официальный язык. И это значит, что на ней надо писать аккуратнее, а не то, что вообще не использовать. Тем более тут даже подчеркнули, что можно использовать, введя Java zip как вариант посылки.

        Плюс на моей памяти (последние пять лет) это первый прокол в установке ТЛ под руководством Михаила Расиховича на официальных контестах. Собственно когда обсуждали на чем писать внутри команды, финальный аргумент был что-то типа "Мирзаянов контролирует, не будет хрени с ТЛ для джавы". Избаловали нас качеством саратовского ЧФ.

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

        Сергей, по TL решение упало у 61 команды из 106. Т.е. пострадали 58% участников контеста. И мы оказались в их числе, хотя наше с Geisterkirche решение работало всего 5 секунд на 2 претесте. А мы специально переписали код с Java на C++ и выкинули все элементы алгоритма, заметно замедлявшие программу, но укладывавшиеся в TL по 2 претесту.

        Даже не знаю, какой компромисс можно предложить в данной ситуации.

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

          Понимаете в чем штука, на джаве 10+ тестов похоже вообще не возможно вычитать. Хотя это гипотеза, дорешки пока нет. Изначально такой жести по ТЛ не анонсировалось. По-хорошему надо было предупредить, что финальный набор тестов будет в разы жестче. И предупредить, что джаву для серьезной попытки брать не стоит, так как не придумали, что делать с таким количеством ввода-вывода.

          Сейчас было бы уместно позволить 4 командам реджадж со сменой языка и старым алгоритмом без каких-либо оптимизаций. Ибо перекос по времени работы получился не реальный.

          PS: Кстати, было бы интересно посмотреть вашу статистику по тестам.

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

а правда на счет "фирменной футболки"? (здесь должен быть стесняющийся смайлик) А куда её пришлют? Вероятно сюда. Я и забыл об этой странице :)

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

Будет ли возможность дорешивания ?

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

Большое спасибо за интересный контест! Желаю проводить побольше таких на Codeforces (и не только в качестве этапа VK Cup)!

Выскажу некоторые комментарии и предложения:

  1. Условие задачи должно более однозначно ограничивать максимальный размер теста. В этом контесте все понимали, что максимальный тест (с 1 инвокером и 20000 посылок по задачам с 1000 тестов по 30000 миллисекунд) превышает TL по времени работы на несколько порядков, но никто не знал насколько сильно финальные тесты будут по объёму превышать претест №2.

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

  3. Результаты по каждому тесту стоит нормировать на лучший результат по каждому тесту (как делается во многих TC Marathon), а не на результат авторского решения, которое на некоторых тестах работает во много раз хуже оптимального, необоснованно повышая относительную стоимость этих тестов.

  4. Хотелось бы больше разнообразных тестов (и претестов, и финальных, и тестов для локального тестирования).

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

Я внимательно изучил доводы всех отписавшихся в комментариях и провел несколько собственных экспериментов. Спасибо за фидбек!

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

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

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

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

Интересно, до какой степени все-таки контест помог Codeforces, и автора почерпнули идеи для шедулера который реально используется на платформе? Если да почерпнули, то не стоит ли открыть тесты и запустить дорешивание ограничив количество посылок?

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

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

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

      Возможно действительно этот раунд что-то изменил. Сегодня мои решения на сервере проверялись очень-очень быстро — на >100 тестах за 3 нажатия F5 подряд. :)

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

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