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

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

Приглашаем вас поучаствовать в Кубке трёх четвертьфиналов — 2015 — командном онлайн-соревновании, которое будет проводиться параллельно с четвертьфиналами ACM в Москве, Минске и Санкт-Петербурге. Турнир будет организован совместными усилиями команды Яндекс.Контест и жюри перечисленных четвертьфиналов ACM ICPC. Даты и времена проведения: Московский ЧФ — 18 октября, 12:00 по Москве, ЧФ в Санкт-Петербурге — 24 октября в 13:00 по Москве, Минский ЧФ — 04 ноября, 18:00 по Москве.

Команды, участвующие в официальной версии одного из четвертьфиналов, могут поучаствовать в онлайн-версиях остальных четвертьфиналов. Команды, не участвующие ни в одном из официальных четвертьфиналов, могут принять участие онлайн во всех трех раундах. Результаты каждой команды на всех соревнованиях, официальных и неофициальных, будут учтены, итоговый зачет турнира будет производиться по системе Гран При 30.

Регистрация на онлайн-версию каждого четвертьфинала идёт непрерывно вплоть до старта соревнования. Создать команду в системе Яндекс.Контест вы можете по ссылке Команды. Все приглашенные в команду участники должны подтвердить своё участие в соревновании. После успешного создания команды необходимо зарегистрироваться на соревнование, указав вашу команду. Также возможно и индивидуальное участие.

Правила отдельных раундов совпадают с правилами официальных четвертьфиналов.

Потренироваться сдавать задачи в системе Яндекс.Контест можно, приняв участие в Тестовом соревновании.

UPD: Регистрация на МосЧФ открыта. Не забудьте принять приглашения в команды, чтобы участвовать.

UPD2: мы рекомендуем не смотреть текущие результаты МосЧФ, если вы хотите решать зеркало ;)

UPD3: открыта регистрация на Северный ЧФ. Чтобы участвовать командой сначала создайте команду и примите в неё приглашения, потом зарегистрируйтесь от имени команды.

UPD4: открыта регистрация на Западный ЧФ!

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

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

Если бы инфа об этом была бы пораньше... Понятно, что можно было догадаться.

Или где-то было объявление/расписание?

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

I was trying to register as a team but in the process I registered individually. How can I now register as a team ? Is it possible to cancel my participation as it is possible in Codeforces ?

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

Yandex competing with Codeforces for "Most Delayed Contest Platform" award.

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

Как решать G и K?

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

    K: давайте посмотрим на задачу с конца, а именно посмотрим на все стоки. Где должен стоять сток с наибольшим номером? Очевидно, на последней позиции (так как стоки можно переставлять, можно поменять его со стоком, стоящим на последней позиции и улучшить ответ). Будем поддерживать сет стоков, удалять сток с наибольшим номером, пересчитывать число исходящих рёбер у его предков, и, возможно добавлять их в сет. Таким образом получили решение за .

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

    G: расстояние между точками (x1, y1) и (x2, y2) — это . Переберём, где стоит , пройдём сканлайном слева направо, поддерживая точку с минимальным и обновляя с помощью неё ответ.

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

      Альтернатива по G — решим точно так же, как обычную задачу поиска наиболее удаленных точек (выпуклая оболочка + указатели), только расстояние будем считать так, как описано в условии.

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

        Как доказать?

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

          Если вспомнить что с обычной метрикой мы можем построить выпуклую оболочку как набор внешних точек на линиях аля x cos(a) + y sin(a), т.е. мы этими линиями облепляем нашу фигуру.

          Здесь доступных углов всего 8, соответственно и будет на них не более 8 точек (если попадает несколько, то можем взять любую), а из них можно сделать квадратную проверку.

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

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

        У нас зашло в дорешку, но непонятно, как такое работает.

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

        Рассмотрим пример с точками: O(0, 0), A( - 3, 5), B(0, 6), C(3, 5).

        Пусть мы хотим найти самую удаленную точку от точки O.

        Тогда если измерять в Евклидовой метрике, всё будет хорошо, функция расстояний будет выпуклой: {5.83, 6, 5.83}.

        Если измерять в заданной метрике, то функция расстояний будет вогнутой: {6.24, 6, 6.24}.

        Мы не стали писать такое, потому что думали, что не зайдет...

        В общем, почему оно работает? :)

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

          Не уверен, что понял, в чем суть вопроса.

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

          Функция расстояний — это такая дискретная штука, описывающая расстояния от текущей вершины до остальных в порядке обхода? Она и в Евклидовой не обязана быть выпуклой. Возьми правильный 2*N-угольник (вписанный в окружность), разрежь его пополам, добавь еще одну вершину в центре этой описанной окружности и по одной в каждом круговом сегменте. Расстояние от "центральной" вершины к каждой из старых вершин будет равно R, а расстояние от нее к новым вершинам будет меньше R (потому что они внутри круга). Получается настолько немонотонная и невыпуклая функция, насколько это вообще возможно — последовательность расстояний будет пилообразной :)

          Ну или даже на твоем примере — подтяни точку В ближе (напр., в 5.5 вместо 6) и в Евклидовой метрике все перестанет быть выпуклым.

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

            Точно, почему-то раньше мне это не казалось очевидным =)

            Действительно, если подтянуть точку B в (0, 5.5), то будет {5.83, 5.5, 5.83} в Евклидовой метрике. Получается, тернарник нельзя запускать, из-за того, что функция может быть пилообразная.

            Интересно, как он вообще прошел в этой задаче тогда :)

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

            Доказывать нужно через "возьмем интересные направления". Мы на контесте вспомнили доказательство, оно не распространяется на эту задачу.

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

      Сканлайн не нужен. Выберем 8 лучших точек по скалярному произведению с векторами (1, sqrt(2) — 1), (sqrt(2) — 1, 1) и еще 6 таких же векторов с минусами в нужных местах.

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

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

        Почему это работает? Почему такие вектора? Какой смысл у произведений?

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

        А это как доказать?

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

          Сначала нужно показать, что расстояние между двумя точками — это всегда максимум из скалярных произведений описанных выше векторов на (dx; dy).

          Дальше как в манхэттенском расстоянии. Зафиксируем точку j, и найдем точку i с максимальным (xi — xj) * mulx + (yi — yj) * muly по всем парам (mulx; muly). Для этого можно найти максимум по каждой паре в отдельности, а потом взять максимум из найденных 12 точек. Но при поиске максимума по каждой паре в отдельности -xj * mulx и -yj * muly можно выкинуть как константы.

          UPD: произведений на самом деле 8, потому что пары с двумя единицами нам не нужны, как и пары с двумя корнями.

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

E, B?

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

    E: Запишем, сколько прибавляют к сумме все такие перестановки, в которых А и В встретятся на уровне Х и А победит. Необходимо посчитать число таких перестановок :) Для этого надо выбрать 2X - 1 чуваков после B, еще 2X - 1 чуваков среди всех остальных после А, а также позицию этой игры среди всех игр выбраного уровня, а дальше поумножать все на нужные цэшки/факториалы. Это дает нам наивное решение; чтобы проапдейтить его, достаточно заметить, что все хорошо группируется — каждый множитель зависит либо от А, либо от В, но не от обеих сразу. Погруппируем, посчитаем сумму по всем парам по всем уровням, в конце поделим на факториал.

    Наверное, с кодом будет понятнее: link.

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

    B: Удвоим строку A, теперь нужно найти такие D, E, что A + A = ... + D + ... + E + ..., причем E + D = C и расстояние от начала D до конца E максимально, но не больше len(A). Переберем начало E, утверждается, что можно взять максимальный префикс C, который можно набрать с данного места (иначе можно перекинуть символ из начала D в конец E). Это z-функция в данной позиции. Теперь мы знаем D, нужно найти наиболее раннее вхождение D на каком-то отрезке. Это можно сделать, посчитав z-функцию для rev(C) + # + rev(A) + rev(A) и с помощью дерева отрезков найдя "самый левый элемент больше заданного на отрезке" за .

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

У нас в J не зашло из-за теста m = 0. Теперь окей.

Ой, все!

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

How to solve problem B?

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

Hi, when will the final result of Moscow QF be available?

Edit: It is available now :) thanks

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

How to solve H?

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

    Если предположить, что удалять выгодно не более 256 элементов, то динамика

    ЗЫ Как это доказать??

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

      У нас неравенство для константы чуть больше пятисот. мы легко можем взять >=(1+2+...+n-256*n). И используя n — k мы возьмем <= (1+2+...+n-k+256*(n-k)). Если первое больше второго, то такое k нам не подходит. n+(n-1)+...+(n-k+1)>256*(2*n-k).Понятно, что для k примерно равного 256*2 неравенство сойдется. Победа!

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

        я, если честно, ничего не понял(

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

          Попробую еще раз. Если ты взял k чисел, то i-е из них -- (i ^ coef_i), где coef_i < 256. Так как xor с числом, меньшим 256, не меняет ничего, кроме последних 8 бит, то появляется неравенство: |i — (i xor coef_i)|<256. Комбинируя дважды эти неравенства с разными знаками, мы получим то, что я написал выше.

          Глубинный смысл в том, что |(10^5 xor a) — 10^5| очень мало по сравнению с 10^5 (для любого маленького a).

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

How to solve B?

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

How to solve B?

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

Результаты?

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

А что произошло с командами Moscow SU Trinity / SG и задачей K? Судя по комменту, там надо найти лексикографически максимальную топологическую сортировку. Вроде не особо трудная задача.

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

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

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

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

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

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

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

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

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

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

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

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

        К слову об авторах. Они считали, что это гроб, и не знали того решения, которое сдавали участники.

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

          А известно авторское решение?

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

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

            кажется можно в каждой вершине хранить битсет всех кто из нее достижим типо того.

            bitset<N> bs[N];
            
            void dfs(int v) {
                if(bs[v].any()) return;
                bs[v][v] = 1;
                for(int i = 0; i < g[v].size(); i++) {
                    int to = g[v][i];
                    dfs(to);
                    bs[v] |= bs[to];
                }
            }
            

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

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

              Да, там получается (200000)^2/32= 1 гиг памяти, но и по времени такая же оценка, это долго.

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

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

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

                500 мегабайт получается же.

                А. 5 гб вообще получается...

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

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

          Действуем так: Ищем самое маленькое неустановленное число v. Запускаем дфс из v, чтобы определить всех, кто еще не установлен и требуется для установки v. В ходе дфса для каждой такой вершины посчитаем, сколько вершин требуют ее установки, чтобы их можно было установить. Теперь будем строить обратный порядок для текущего множества вершин. Сама вершина v, очевидно, в нем будет первой. Далее выгодно выбрать наибольшую из тех, у кого количество ссылок равно нулю. Это можно сделать с помощью обычной кучи.

          Дабы пояснить за свой "гнилой базар", выложу свой код.

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

          +1 мы прорешивали этот контест. Придумали это, не доказали и забили. И кстати там вроде не совсем лексикографически минимальный, там немного другое надо было искать.

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

            Если перевернуть последовательность, то требовалось сделать ее лексикографически максимальной. Об этом, как мне кажется, говорилось.

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

              Раз уж ты так переформулировал — можно и проще решать: ставим в конец вершину с максимальным номером такую, что из нее все рёбра ведут в уже поставленные :) Реализация в несколько строчек с set-ом получается.

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

        Согласен. У нас в команде даже раскол случился, для одного она оказалось гробом, а для другого лёгкой задачей на 20 минут.

        P.S. Хз за что тебя заминусовали.

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

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

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

    Лексикографически минимизировать обратную перестановку к топсорту.

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

      А неверно, что ответ — лексикографически максимальная развернутая? Вроде жадность именно такое и даёт.

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

Anyone else got WA 15 in problem L of Moscow QF (and know how to fix it)? I've been banging my head for so long now and still have no idea what I did wrong :(

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

Москвский четвертьфинал появится в тренировках?

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

how to solve B-Banana Brain's Bracelet? I use kmp both forward(continuous) and backward (split in half),but get wa.

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

how to solve C-Colder-Hotter? I use bineary-search,first x then y,I test many examples,but still get wa.

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

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

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

Does somebody try B?I get wa on test 60.If anyone has the same experience,please share your ideas with us?

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

Где можно тесты раздобыть? Написал решение по King's Rout (K): перебираю все вершины, если вершину ещё не посещали, то запускаем dfs из неё, записываем все вершины в порядке обхода в массив, и для каждой вершины запоминаем позицию в этом массиве, и время входа и выхода обхода в глубину (это будет отрезок в массиве обхода в глубину с вершинами, которые нам нужны чтоб выкинуть нашу вершину). Для каждого под графа рекурсивно делаем следующее: запускаемся из вершины из которой мы строили обод в глубину, деревом отрезков ищем минимум и для этого минимума опять запускаем. (При запуске из вершины мы в дерево отрезков кладём в нашу вершину inf). Если для нашей вершины нет детей или минимум = inf выводим её. Потестил, вроде работает, может кто тесты подкинет или скажет где я не прав.

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

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

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

Лучшая четверть, слава богу что последняя.

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

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

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

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

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

А почему минский ЧФ в такое необычное время? Вроде Минск и Москва в одном часовом поясе, не помню, чтобы трансляции раньше начинались в шесть вечера.

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

Объединённые результаты по всем трём турам.

Если какие-то результаты одной команды не склеены (или склеены результаты разных команд), пишите в комментариях — будет исправлено.

Через неделю результаты будут считаться окончательными.

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

Про минский ЧФ.

D — просто напишите двух китайцев

E — копия задачи с projecteuler (да и на А там что-то похожее уже было)

J была уже кучу раз.

Мда.

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

Western contest is available for virtual participating. Sorry for late reminder.

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

deleted

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

Интересно было бы что-нибудь узнать про B.
Мы пытались разбирать случаи, но дошли только до 9 теста.

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

Как решается J?