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

Всем привет!

Чемпионат Russian Code Cup 2015 приближается к финишной прямой. В ближайшее воскресенье 14 июня в 13:00 состоится отборочный тур RCC-2015. В отборочном туре примут участие 604 лучших по итогам трех квалификационных раундов — борьба была такой напряженной, что в первой и третьей квалификациях 200-е место оказалось поделено, и в отборочный раунд прошло по 202 участника.

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

По итогам отборочного раунда 200 лучших раунда получат фирменную футболку наших соревнований, а топ 50 участников пройдут в финальный раунд и получат возможность сразится за ценные призы. Финал состоится 19 сентября и, как и в прошлом году, пройдет онлайн. В соответствии с правилами соревнований в финал могут пройти только те, кому на момент проведения финала исполнится 18 лет.

Приглашаем квалифицировавшихся принять участие в отборочном раунде, а всех остальных поболеть за своих друзей на сайте http://russiancodecup.ru!

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

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

Рассылка об отборочном раунде за пять минут до него — это пять!

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

Не могу залогиниться. http://www.russiancodecup.ru/crosslogin/ не отвечает.

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

Кто-нибудь дайте условия.

»
11 лет назад, скрыть # |
← Rev. 3  
Проголосовать: нравится 0 Проголосовать: не нравится

10 минут до конца... как же тяжело ожидание...

И самое интересное то, что я не понимаю, почему моя программа по B работает. Она ищет ответ, если его нет — выводит No. Если No программа не вывела, значит она нашла ответ. Я решил дополнительно проверить этот ответ на правильность. Проверяю и если ответ неверный — делаю return 1 (ну чтобы заслав, убедиться, что ответ действительно неправильный). По логике вещей, если ответ неправильный, то значит логика поиска ответа неправильная. Но на самом деле, если ответ неправильный, это значит что ответа нет... Изменив return 1 на вывод No — зашло.

И еще будет очень обидно, если меня выкинут из топ200 только из-за двух дебильных посылок с WA1 и PE2

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

    Минута до конца... ну за что вы так со мной, за что!

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

    Кстати, если решение зашло, то оно уже не будет перетестироваться? Зачем тогда отсылать то, что уже Accepted

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

      Я и не посылал то, что уже Accepted, а то засчитали бы это за попытку еще. Мне очень трудно было получить этот Accepted, и он получился случайно... я был уверен, что если зашлю, то будет WA, ибо скорее всего я просто неправильный ответ нашел.

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

      Во-первых, можно за 5 секунд до конца отсылать всё подряд, не зная вердикты предыдущих посылок, авось что-нибудь зайдёт (год назад у меня такое прокатило). Во-вторых, можно узнать, зайдёт ли код по другой задаче на макстесте, сгенерировав макстест внутри кода и заслав в решённую задачу: если будет ТЛ, значит, не зайдёт.

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

Объясните новичку, почему этот код заходит на MSVC, но получает TL2 на g++? Задача Е, да.

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

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

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

    Я в E проассертил, что у меня ТЛ не ТЛ =) наверное у тебя примерно тоже самое.

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

    Хотел спросить, известна ли особенность, что на RCC g++ плохой. Видимо, неизвестна.

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

      мне кажется, что это какая-то ботва конретно на этом раунде была с ним, а не в принципе.

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

      Под виндой все плохо. Я когда-то заливал задачу, у которой авторское решение под MinGW работало очень долго, под MSVC в несколько (в 7-10) раз быстрее было. В общем считывание и, предположительно, декструкторы STL'евских коллекций все тормозят. Причем так было не только на инвокерах, а на моем ноуте такая же фигня под виндой и MinGW наблюдалась.

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

        Я уже как-то писал. Думаю, у вас просто сборка mingw неудачная какая-то используется. Если проблемы с ней известны, может не стоит ее продолжать использовать? Кроме того, 4.8.x вроде еще в 2014-м обновили до 4.8.4, ясно же, что исправили много багов со времен 4.8.1.

        Можешь найти то решение (у которой авторское решение под MinGW работало очень долго, под MSVC в несколько (в 7-10) раз быстрее было)?

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

        У нас на отдельных машинах бывали проблемы с инвокерами плюсов, мы так и не разобрались, в чем дело. Суть была примерно следующая: объявляется vector<int> v[100000]; и получается TLE.

        Upd. Я предполагал тогда, что проблема примерно в том же, почему F5 и Ctrl+F5 запуск в вижаке существенное разное время работает — что-то вроде проверок кучи при/после деаллокации памяти.

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

        Насколько я знаю, в 64-битном компиляторе g++ 4.9.* проблема с медленным stdio, которая в следующих версиях останется. А проблемы с STL -- это проблемы именно настроек инвокера, а не компилятора.

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

213( Без понятия, почему В не заходит=(

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

Есть подозрение, что по задаче E рантаймы временами отображались в вердикте как ТЛ.

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

Последние две минуты выкинули с TOP-200. :((
203 футболок PLZ :D

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

А с какого момента результаты можно будет считать окончательными?

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

Отдам бесплатно свою футболку первому в ответах на это комментарий.

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

Как первую задачу то решать?

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

    перебор)

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

    Ищем все числа x и y, чтобы n — 2 * x — 3 * y == k, и 2 * x <= кол-ву нолей, и 3 * y <= кол-ву единиц, а потом прибавляем к ответу (a + b)! / (b! * a!), где a — текущее кол-во нолей, b — текущее кол-во единиц.

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

    Данные две перестановки 0-1 позволяют из любой строки получить любую другую с таким же количеством 0 и 1. Перебираем кол-во нулей cnt0 в результирующей строке, смотрим можем ли мы стереть лишние нули по два и единицы по три, если можно до добавляем к ответу C(k, cnt0)

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

    Перебрать количество ноликов в конечном числе, если такое количество ноликов и единичек допустимо, то добавить к ответу C(k, количество_ноликов)

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

Задача D про числа Каталана?

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

Давненько я на плюсы не переписывал...

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

Объясните как решать B.

Если образно я делал следующее:

  1. Проверяем что граф у нас двудольный и красим каждую из вершин в цвет доли.
  2. Теперь у нас есть несколько компонент, у i-ой компоненты ai и bi вершин в каждой из долей. Теперь надо выбрать какие из долей каждой компоненты идут в какие команды. Это я делал используя динамику T[кол. игроков в первой команде] = [индекс последней доли, которую добавили].

UPD:

Вердикт Wrong Answer

Ошибка в динамике, пришлось переделать следующим образом:

T[i][s] = номер доли 0/1 компоненты с номером i , при которой достигается количество игроков в первой команде s, если брать только компоненты с номерами от 1 до i. Ошибкой было то, что необходимо взять обязательно все компоненты. Такая ошибка получается, когда есть компоненты, в которой одна из долей пустая.

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

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

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

    У меня долгое время был WA с таким решением, потом я понял, что неправильно написал динамику. И в конце концов решил просто проверять финальный ответ, действительно ли он правильный, и если нет, то просто вывел No и зашло.

»
11 лет назад, скрыть # |
 
Проголосовать: нравится -6 Проголосовать: не нравится

У кого-нибудь были проблемы с отправкой решения за 1,5 минуты до конца контеста?

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

Я выиграл 4 футболку на этой неделе :]

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

Думаю в задаче Е нужен rejudje всех посылок на Visual. Сам не сдавал но думаю у многих были проблемы с g++.

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

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

Однако хочу заметить, что напоминание, присланное за 5 (пять, Карл!) минут до раунда нафиг, простите, никому не надо. Оно не нужно тем, кто и так помнит. И мала вероятность напомнить тем, кто забыл — я не сижу постоянно дома и не проверяю почту постоянно. Как, думаю, и большинство.

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

На сайте RCC появились тесты, но при переходе по ссылке выдаёт 403 Forbidden.

UPD: Тесты доступны. Кто-нибудь зальёт тренировку?

UPD2: А, нет, показалось. Архив битый выложили.

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

Думаю, будет честно, если количество футболок увеличат до 205.

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

Добавил соревнование в тренировки: 2015 Russian Code Cup (RCC 15), отборочный раунд.

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

Я прошел на онсайт находясь на 23-м месяце службы в армии!!!

P.S. Сделав сабмит за 10 минут до конца и с 50го места)

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

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

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

      Вот треш. Так хотелось на онсайт. RCC11 на котором я был, был просто супер. Остается надеяться на хороший приз и на то чтобы втиснуться в топ10)

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

      Ну, письмо с результатами раунда содержит такую фразу: "О формате и времени проведения Финала мы сообщим вам отдельно в ближайшее время."

      Можно быть оптимистом и понимать её так, что может всё же онсайт будет, хотя бы в формате "все собрались в офисе мейлру, написали контест и разошлись" :)

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

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

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

    А почему так долго-то? 23 месяца

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

Поменял часовой пояс на США, а календарь этого не понял и напоминание пришло только сейчас.

Рассылка после начала также порадовала.

Грусть, профекапил 3 футболки из четырех в этом году.

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

Чекер к задаче В не проверяет, что номера команд в ответе участника — это числа 1 или 2. Можно вывести хоть 3, хоть 10, хоть что либо ещё.

Вот пример посылки 11586653, которая за счёт этого генерирует ответ на тест, где его быть не должно (возможно, для её просмотра требуется тренерский доступ в тренировках).

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

Когда пришлют сертификат?=)

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

Разбор нашел: Тык