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

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

5 сентября стартует 1/4 чемпионата мира по программированию! Всем удачи. Здесь предлагаю обсуждать организацию, задачи и просто спамить)

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

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

Первый вопрос: Есть ли расписание мероприятий в Луганске и где предполагают поселятся участники?

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

Согласно приглашений, полученных 23.08.2012, по Центральному региону (Сумы) расписание таково:

05.09.2012, 15:00: открытие, жеребьёвка

05.09.2012, 16:00: пробный тур

06.09.2012, 10:00: основной тур

06.09.2012, ориентировочно 18:00 но гипотетически может изменяться в зависимости от текущей ситуации: награждение и закрытие

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

05.09.2012, 16:00: пробный тур 06.09.2012, 10:00: основной тур

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

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

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

      Для распределения команд по компьютерам и аудиториям.

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

Открытие только что началось

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

Где можно будет online поболеть за команды?

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

    думаю тут, или тут можно будет.

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

      Пока что ни там, ни сям не доступно :(
      И организаторы молчат...
      Будем надеяться, что кто-то осведомлённый откликнется! :)

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

    Похоже, что онлайн-результаты тут

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

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

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

    Задачи C, E, G ? Отпишитесь, плиз, когда выясните в чём дело!

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

      Мы пытались сдавать 3 разных трактовки задачи Е и только последняя зашла дальше 1 теста. Причем, как по мне, они все подходили под условие.

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

        А какая трактовка в Е правильная?

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

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

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

          Саме те, на чому ми отримували ВА. Шкода, трішки не хватило часу, щоб здати "правильний" розвязок.

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

            именно так и было у большинства тех кто получал ВА по Е

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

      C ещё ладно — там тайм лимит 0.5 (Внимание, вопрос: зачем? Автор знает решение за n^2 или ждал именно оптимальные n^2 log n?) и при наличии времени можно было её впихнуть. Но с остальными двумя — ВА и это вводит в ступор. Ещё больше удивляет 3 аксепта по Е (наверно, она всё-таки решалась персистентной дучей по неявному ключу или минкост-максфлоу на суффиксном дереве, а наивные люди какие-то цепочки строили, факториалы считали...). С G тоже не понятно — команды с отличными математиками имеют по ней минусы, а с первой попытки её вообще никто не сдал. Такое ощущение, что оригинальные задачи оказались слишком простыми (так и есть), более сложных не нашли или не захотели искать и поэтому для усложнения в условие был заложен дополнительный скрытый смысл, который обнаруживается только при тщательной вычитке.

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

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

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

        Насчёт C: я (автор) решения более быстрого чем не знаю, но мне удалось построить совокупность оптимизаций, с которыми всё укладывается где-то в 0,170 сек; а совокупность оптимизаций, с которыми всё укладывается в 0,300--0,350 сек, как по мне, относительно простА. Вот если б таки появились именно на эту задачу решения на джаве, было б стрёмно.

        UPD: а все ли, кто говорит, будто у них не прошло , уверены, что их решение ни на каких входных данных не превращается в n3?

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

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

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

            Я с этим почти согласен, но не согласны люди, организовывающие техническое обеспечение :( По их мнению, необходимость делить проверку между несколькими серверами — бОльшее зло, чем time-limit-ы в 0,5 сек.

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

          Вот объясните мне, за что минуса!

          За то, что поставили time-limit втрое выше авторского решения? Или за то, что он всё равно маленький? Или минусуют меня за то, что команда технического обеспечения не считает целесообразным делить проверку между физически разными компами? Или за то, что я сделал задачу, в которой участник очень даже может думать, будто написано решение за и не видеть что оно на самом деле за n3?

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

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

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

            Я надеюсь, ваши оптимайзы с такими же запасами и на Джаве заходят?

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

            Немного конструктивной критики. Насколько я понял из Вашего поста, решения на Джаве по задаче С проходить если и должны, то впритык (если я Вас неправильно понял, простите). Это не очень хорошо, учитывая, что Джава — официально используемый язык АСМ и решение на нём должно существовать.

            А ещё я утверждаю, что я писал именно n^2 log n (не очень оптимально, но всё же) и получил ТЛЕ.

            Посудите сами: отсортируем массив весов и массив рёбер (n^2 log n), рёбра создадим без дубликатов, т.е. их до 500000. Для каждого ребра (n^2) вершины, инцидентные ему (n^2), запихнём в вектор, соответствующий весу этого ребра (изначально заведён массив из 10^6 векторов, lower_bound (n^2 log n) ищет первое вхождение веса ребра в массив весов и говорит, что вектор с таким же индексом отвечает за этот вес), затем добавим все рёбра (каждое ребро — не более раза, а значит суммарно n^2) с текущим весом в граф и запустим dfs только от вершин в текущем векторе (так же суммарно n^2). После того, как запустили dfs, почистим вершины, которые находятся в текущем векторе (а значит, ребра не накапливаются с одной стороны и мы проходимся по каждой вершине ровно столько раз, сколько рёбер ей инцидентно с другой стороны).

            Я не снимаю с себя ответственности за неоптимальность кода — слишком много добавлений в векторы, можно было использовать 1 вектор вершин, а не 10^6, можно было сортировать рёбра в каждом списке инцидентности, а не глобально (увы, времени оптимизировать особо не было — ещё 2 задачи висели), но на асимптотику это не влияет, а именно она у Вас вызывает сомнения.

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

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

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

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

    Я вчера лично разговаривал с девушками из ОНУ, юнаками зі Львова и с братьями Соболевыми, так уровень проведения второго этапа страдает, а в случае, как сказал Дима, Луганска, так хуже провести было просто невозможно.

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

    И еще давайте вместе поищем, попросим, подумаем над тем кто у нас в Украине смог бы организовать все так, чтобы задачи были достойны и интересны, уровень организации не страдал, организаторы хотели и могли бы сделать праздник, чтобы было не стыдно туда пригласить иностранные команды и спонсоров, неужели на Украине нет таких людей? Надеюсь, что есть!!!

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

      "Я вчера лично разговаривал... с братьями Соболевыми"... Насколько я знаю, Дмитрий Соболев в данный момент находится на стажировке в Facebook. Вы ведете репортаж из Америки?..

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

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

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

          Какой фееричный бред..

          Народ, перестаньте кормить тролля.

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

          Хм. Вы можете назвать хотя бы одну команду, которая была дисквалифицирована по этой причине за последние N лет?

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

А есть ссылка на монитор?

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

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

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

Где можно достать условия задач?

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

А где-нибудь можно порешать этот контест?

p.s. может кто-нибудь добавит в тренировки, если у него есть тесты?

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

    AWPRIS то ли договаривается то ли уже договорился получить полный комплект тестов и провести зеркало этого соревнования на e-olimp.com.ua Только вот когда оно будет...

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

      e-olimp — это хорошо, но тренировки на Codeforces — предпочтительнее, т.к. их может запускать каждый в любое время, а на означенном сайте такими возможностями обладают только руководители групп. А ещё у господина Присяжнюка есть удивительное мнение о том, что перед соревнованием и зеркалом стоят разные задачи, авторское решение не обязано проходить в ТЛ и если по задаче нет чекера, то участнику следует угадать решение автора. Вкупе с не очень быстрым сервером это порой создаёт задачи, которые надо оптимизить часа 3.

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

Расскажите кто-нибудь как решать D и F, пожалуйста. По поводу задачи D — буду рад, если кто-нибудь еще и условие полностью обьяснит.

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

    Задачу F можно решить при помощи БФСа. состояние — где мы можем сейчас находится. поэтому состояний максимум 2^(n*m). Ну и чтобы быстро совершать переходы по командам D,L,R,U нужно воспользоваться битовыми маскам (что-то похожее на http://codeforces.me/problemset/problem/97/D ). Чтобы ответ был лексмин, в очередь нужно класть сначала переход по D, потом по L, R и U. В итоге сложность при аккуратной реализации получится порядка 2^(n*m)*4

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

      Спасибо, понятно.

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

      Кстати, мне одному кажется, что из условия задачи F неочевидно, что выводить в случае, когда есть только стены? С одной стороны, выходов нет, достичь их нельзя, поэтому NO SOLUTION. С другой — стартовать тоже неоткуда, поэтому никуда идти не надо и ответ — пустая строка. Мне кажется, что либо условие задачи двусмысленно, либо такой тест некорректен.

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

    Задача D.

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

    Найти сумму всех получившихся чисел после n разбиений.

    Решение.

    Из ограничений довольно ясно, что придётся возводить матрицу в степень. У нас была матрица 4*4. Эти 4 координаты — сумма элементов в углах исходного куба, на рёбрах, на гранях и внутри соответственно. Матрица переходов получилась такая:

    Уже после контеста я вывел формулу, дающую тот же ответ: (3n + 1)3.

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

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

      Спасибо, буду разбираться.

      По поводу условия. Там есть такая строчка "We will split the cube into 8 equal cubes and assign to new vertices numbers equal to the sum of numbers in adjacent vertices." Для меня както не очевидно, почему из нее не вытекает, что значение в центре верхней грани первоначального куба зависит не от всех значений на серединах ребер этой грани.

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

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

        Минусующие — хотите сказать, что вам такие задачи не попадались? ;)

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

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

      Допустим, имеется рекуррентность f(n) = a(1) * f(n-1) + ... + a(k) * f(n-k). Составляем характеристическое уравнение заменой f(m) -> q^m: q^n = a(1) * q^(n-1) + ... + a(k) * q^(n-k) или q^k = a(1) * q^(k-1) + ... + a(k). Получаем уравнение k степени с корнями q_1, q_2, ..., q_k, c учетом кратности и комплексных корней. Если все корни различные, общее решение рекуррентности выписывается в виде f(n) = c(1) * q_1 ^ n + c(2) * q_2 ^ n + ... + c(k) * q_k ^ n, где c(i) определяются из начальных условий. Другие случаи рассмотрены здесь http://en.wikipedia.org/wiki/Recurrence_relation#Solving.

      Применение на практике — если повезет с корнями характеристического полинома. Например, для чисел Фибоначи f(n) = f(n-1) + f(n-2) корни иррациональны и точный ответ с использованием формулы получить непросто. http://en.wikipedia.org/wiki/Fibonacci_number#Closed-form_expression

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

      Для этой матрицы можно было легко перейти к степеням, потому что она получилась треугольная, а значит ответ можно представить в виде линейной комбинации степеней элементов на диагонали. Т.е. если на диагонали стоят b1, b2, ..., bm, то характеристический многочлен будет равен (x - b1)(x - b2)...(x - bm), и поэтому an = c1b1n + c2b2n + ... + cmbmn.

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

А я кину камень в огород организации...

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

А кто как различал фигуры в задаче А?

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

    С помощью хеша. Мы использовали степени 3-ки.

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

      Мы тоже хешировали, хотелось бы и другие способы узнать.

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

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

    А ещё альтернативные способы, которые абсолютно гарантированно правильные:

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

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

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

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

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

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

      А какой там был МЛ? Довольно глупо, что я не мог взять еще один массив размером со входные данные, из-за чего получал МЛ 14-15 тест.

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

        Довольно странно, потому что в кларах было написано, что на все задачи МЛ 256Мб.

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

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

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

          А как, собственно, должен отображаться участнику stack overflow? Признаюсь, что именно этот вопрос я как-то до сих пор пропускал мимо внимания. Впрочем, и на этом туре от меня это вроде бы никак не зависело.

          И, разве совсем уж нелогично и неожиданно выглядит, что рекурсия глубиной более миллиона таки ломается? 14-й тест был 1162*1226, примерно 77% клеточек звёздочки:

          for(int i=0; i<N; i++)
          	for(int j=0; j<M; j++)
          		data[i][j] = rand()%100 < 77 ? '*' : '.';
          

          15-й тест — 1206*1153, аналогичным образом обеспечено что примерно 98% клеточек звёздочки. Неужели в этих тестах есть какой-то хитрый и неожиданный подвох???

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

            Ну вроде как везде Stack Overflow это Runtime Error

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

              Это везде по-разному и вообще трудноуловимо, т.к. нужно правильно интерпретировать сигналы. Например, на КПИ-Опен под МЛЕ скрывался выход за границы массива.

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

А кто-нибудь знает, как решалась задача J (про мат. ожидание количества точек попавших в круг)?

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

    По идее, должен знать ее автор, Виталий Неспирный;)

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

    Очень бы хотелось почитать авторский разбор задач (если это вообще возможно).

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

    У меня была идея рандомно выбирать 3 точки и считать ответ за O(n) на протяжении 2х секунд. Дело в том, что в задаче ответ нужно вывести с точностью до сотых. Поэтому по ЗБЧ возможно бы и зашло, хотя я далеко не уверен в этом. Ничего другого в голову больше не пришло. Но руки не дошли написать это, мы Е пытались сдать.

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

      Не, рандом — это от лукавого;)

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

      Мы в последние 10 минут написали это и получили ВА 7.

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

      Быстро написанный чекер ошибается даже в знаках перед запятой;)

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

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

    Вот на этом контесте задача H совпадает с задачей J с данного контеста.

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

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

http://icpc.baylor.edu/public/worldMap/reservationList.icpc;jsessionid=028C66953D9EFC10F329B0E028190381?contestId=1326

Я только что посмотрел список зарегистрированных на румынский полуфинал и у меня возник вопрос, почему им можно регистрировать по 4 команды от университета(например Babes-Bolyai University), а на украинском полуфинале действует жесткое ограничение не больше 3 команд от вуза, почему украинские правила жестче мировых? опять чувствую руку т.Мисюры!

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

Кто вчера участвовал в финале 2й лиги в Харькове? http://ejudge.hneu.net/ Подскажите, пожалуйста, какой-нибудь логин/пасс для дорешивания

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

Собственно условия задач

На всякий случай прорекламируюсь, что тут есть ((ссылка на разбор) и (обсуждение) задачи F)

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

А как, собственно, решается I — о сумме остатков?

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

    Остатки при делении числа N на числа от до , где , формируют арифметическую прогрессию. Так что нужно было быстро просуммировать последовательностей.

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

      И потом, наверное, прибавить остатки от деления на первые sqrt(N) чисел. Благодарю.