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

Автор Bobrovin, история, 10 месяцев назад, По-русски

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

Во второй день ситуация не лучше — я хоть и написал на 300+, но в задаче С2 на фулл загоняли куб при ограничениях в условии на квадрат.

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

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

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

Можешь скинуть ссылку на подобные решения?

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

    Решения не будет, но точно знаю что заслали и точно знаю алгоритм. Задача с1: перебираешь битмаски, сжимаешь массив получившихся строк, шаффлишь массив и считаешь преф суммы 50 раз. Это решение заходит на 100, хотя контртест строится довольно просто, насколько я знаю

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

      Это пиздец. Они не построили тест, имеющий один ответ, содержащий половину столбцов. Это же типа просто поставить в одной строке степени двойки, а в остальных 9999999.

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

    Только что скинули решение, которое заходило на 100. Держи ссылку: https://pastebin.com/yvKYL7qb

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

      Я построил стресс-тест, валющий это решение.

      Тест
»
10 месяцев назад, # |
  Проголосовать: нравится -21 Проголосовать: не нравится

Ты не прав. Без негатива. Мяу

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

    в чем же он не прав друг? тесты действительно были ужасные и заходило то что не должно, в C1 рандом а в C2 куб, кажется такого быть не должно. возможно слово "везение" нужно заменить на "умение загонять то что не должно заходить", это максимум. понятно что сильные участники и так прошли, но кто-то загнал то что не должно заходить из-за слабых тестов и поэтому прошел, забрав проход у людей с таким же баллом(кроме того что у них не зашел куб на 100), только наифавшим больше подгрупп в D

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

      Мое решение в С2 набирает 100 на московском еджаджа, и 39 на липецком потому что там куб. Решение в С1 с митмом и анордеред сетом набирает 100 на мск, и 71 на липецком. Также тли на кф были меньше чем на других платмформах. Кажется слово везение тут подходит лучше всего

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

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

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

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

        ты считаешь что авторы не смогли бы отсечь перебор за 2^30 * 15? мне кажется они не пытались особо, можно было бы сделать n и m на 1 больше и tl поднять в два раза, при этом перебор бы уже работал намного хуже. или сделать отрицательные числа и тогда легче было бы намного строить тесты на которых перебор работает долго или неправильно

        куб в C2 я тоже не понимаю как не смогли отсечь, даже если там условно n^3 / 27 то это все равно 5e9, я не понимаю как такое смогли допустить, сделали бы n <= 7000 и подняли бы ml в два раза то уже было бы намного лучше, 1.5e10, уже даже с рандомными тестами это бы не зашло

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

    Ты не прав. С негативом

»
10 месяцев назад, # |
  Проголосовать: нравится -6 Проголосовать: не нравится

Автор не прав

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

Хочется добавить, что кажется, что в С1 можно было просто добавить отрицательные числа, что уже поломало бы многие решения с отсечениями и рандомом.

Еще С2 странно выглядит из-за разбала 40/69/100, при том, что 69 от 100 отличается лишь небольшой идеей. Логичнее было бы сделать 69 условными 80 и придумать какую-нибудь подгруппу на 60.