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

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

Давайте делиться впечатлениями о прошедшем отборе.

Самый забавный момент был у меня, когда за 10 минут до конца моя C падала с assert-ом, что говорило о том, что одна структура данных считается с отличием от наивного решения. Поискал баг, не нашел. Закомментил assert и скачал input. Не знаю чем закончится, но на инпутах rng_58 и Petr мое решение выдает ответы как у них :)

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

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

Я во 2ой написал Ахо-Корасика за какую-то невменяемую полиномиальную асимптотику, скачал инпут, убедился, что оно тесткейсы с ненулевой скоростью решает, и пошёл читать третью. Когда оно через 6 минут досчитало не всё — был неприятный сюрприз :( Хотел забить, но к счастью передумал и написал таки 3ю (кстати, кто как её решал? мне кажется, что моё решение работает за O(nm), но доказывать я умею только O(m2)).

Вообще, по сравнению с прошлыми фейсбуками, этот финальный отбор какой-то совсем халявный. Поздравляю всех прошедших!

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

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

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

    У меня работает за что-то в стиле . Можешь своё рассказать?

    В явном виде поддерживаю конденсацию графа: СНМ + матрица смежности в битсетах. Потом начинаю добавлять рёбра с дорогих, каждый запрос обрабатывается за не более, чем линию операций с битсетами

    А по мне так в самый раз. Лучше, чем когда больше одной решает пара человек и всё решает время :)

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

      Ну моё видимо тупее. Добавляю дуги по одной, поддерживаю только компоненты сильной связности, из которых ничего не выходит. Интересны дуги из компоненты в незивестно что (остальные дуги — трив). Такой случай я обрабатываю dfs'ом из конца дуги с понятными отсечениями. Но это по идее слишком медленно, поэтому я для вершин ещё храню, какие компоненты из них достижимы (либо "неизвестно", либо "вот такая компонента", либо "больше одной компоненты"), и обновляю это в dfs. Правда, доказывать про это дополнительное отсечение я ничего не умею.

      P.S. Проверил — на их тестах отлично работает и без отсечения, видимо, из-за рандомности.

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

    Казалось бы там совсем не нужна асимптотика в Корасике. Я, например, тупо создал отсортированный вектор всевозможных префиксов и накидал потом failureLinks наивным способом (удаляю первую букву, пока не найду префикс).

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

      Ну вот, а у меня список префиксов был неотсортированным :) В общем, 100 или 100^2 там убрать было очень просто, но не за 30 секунд до time expired (когда я осознал, что эта версия не успевает).

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

Забыл протащить флаги окончания по суффиксным ссылкам в Ахо-Корасик. Свалилась, но всё равно прошёл, второй раз повезло на FB Hacker Cup :)

А контест хороший получился: первая и третья с неплохим временем — проход. Мне кажется, это лучше, чем в прошлом году.

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

    Мне кажется что лучше было бы, если бы двух первых с хорошим временем тоже хватало. А то первые две фактически ни на что не влияли вообще (ну, кроме Сергея Рогуленко :))

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

    Неужели такая стопка ошибок из-за этого?

    И кстати, я строил Ахо-Корасика за долго и предварительно вычистил массив от строк, подстроки которых есть в наборе. С чего оно упало-то?

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

      Я тоже это сделал. У rng_58 упала из-за одинаковых строк в наборе. У меня была тонкость: я значения для динамик считал в long long и long double одновременно, чтобы не париться с возможными переполнениями.

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

        Да, я уже понял, одинаковые строки — FAIL, надо было инпут поюникать.

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

      Переполняется long long небось?

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

        Нет, у меня устойчивая к этому реализация. Я считаю перебор с сохранением (state, l, k) но ифаю сохранененное только на предмет < k. В этом случае сложность по-прежнему state*l, поскольку не более, чем дважды.

        Бага идиотская — при двух равных я выкидываю обе.

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

    Видимо, это был частый баг. У меня на этом же упало и у maksay.

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

Facebook такой Facebook...

Миша, поздравляю с проходом!

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

    А что с Facebook?

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

    Сам не ожидал, спасибо! На прошлом раунде тоже был последний со всеми задачами. Кто понял жизнь, тот не спешит :) Оба раза последняя начинала работать чудесным образом за минуты до конца.

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

    Андрей, в восхищении от твоей победы! Поздравляю!

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

Handles:

1 — andrewzta
2 — hos.lyric
3 — watashi
4 — cerealguy
5 — RAD
6 — Petr
7 — Shef
8 — MikeMirzayanov
9 — RAVEman
10 — rng_58
11 — kalinov
12 — vepifanov
13 — meret
14 — zeliboba
15 — ilyakor
16 — yeputons
17 — tomekkulczynski
18 — KADR
19 — Marcin_smu
20 — eatmore
21 — tourist
22 — alexander86
23 — izulin
24 — pparys
25 — John Dethridge

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

Это fail! В прошлом году 27е место, в этом — 26е. В следующем году должен пройти :)

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

    Нет, Fail — это неправильно понять условие и полтора часа решать не ту третью задачу.

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

      Это точно. А ведь всего лишь, надо было семпл разобрать :(

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

    А разве не окажется, что кто-нибудь наверняка откажется и тебя позовут?

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

      Если не ошибаюсь, в прошлом году Андрей Станкевич занял 26 место, но на финале (судя по фотке) его не было. Мне кажется, в отличие от GCJ тут почти все пишут не ради фана, а ради именно прохождения на финал, поэтому и отказываются редко.

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

        Месяц до онсайта, так что кто-то может и не успеть визу сделать.

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

          кусок правил:

          All Onsite Competitors must confirm their attendance at the onsite event no later than March 4, 2013. If an Onsite Competitor is required to travel from outside the United States, the Onsite Competitor must show proof of a visa application and/or passport by March 4, 2013. Onsite Competitors who fail to meet this requirement may be replaced as an Onsite Competitor.

          фраза "visa application" тут означает "подать заявление на визу до 4 марта" или "уже получить визу"?

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

            Очень важный вопрос. Думаю, что речь идет о получении визы к 04.03.2013, и подтверждении сего факта. Какое им дело да наших очередей.
            В то же время в СПб среднее время ожидания собеседования на визу 19 дней + 2 дня на изготовление. То есть не раньше 11.03, это если завтра записаться.

            А они какое-то письмо присылают? Цель поездки, принимающая сторона, оплата поездки? Отликнитесь, кто в курсе.

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

              Честно говоря, я не вижу, как можно понять эту фразу, как получение визы. Если бы это было так, то было бы написано proof of visa/proof of visa issuance. Написано именно application

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

              Ну видимо они хотят именно application, надеясь, что за почти 3 недели визу смогут сделать (что далеко не всегда верно).

              Письмо они присылают, и насколько я помню — в письме указывают это ужасное официальное название контеста. Поэтому если не хочется после собеседования получить background check на 2 недели — лучше внятно объяснить, что к хакерам это никакого отношения не имеет :)

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

              Для B-1 и J-1 визы существует запись на срочное собеседование(проходит в 10 — 11 утра, очередь около недели максимум, как я помню), где нужно показать консулу, что это действительно срочно. Основное требование — отсутствие отказов по американским визам за прошедшие полгода.

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

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

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

Anyone could add this year's problemset on the GYM. ( ⊙ o ⊙ )。。

The official website itself is inconvenient for practice .. .

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

    Agree with it...In China it is blocked as well...

    And Cong to all those onstiers :) wish I can grow up quickly.

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

      I wonder how watashi this year and ACRush last year were able to compete if the site is blocked.

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

        VPN?

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

        Maybe with some kind of proxy/VPN.

        You know, bypassing the Great Firewall is an important skill for those who lives in China :D We cannot even search "胡萝卜"("carrot" in Chinese) on Google without bypassing censorship.

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

          omg, what's wrong with carrot?

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

          But I've heard from person who have been in China that you have Chinese analogues of search engines (Google) and social networks (Twitter and Facebook). Why just not to use of them? Of course, it's not applicable to Facebook Hacker Cup.

          BTW, sorry for my curiosity, I just want to know what Chinese people feel and think about that firewall and does it really bother them.

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

            Weibo (a Twitter copy) and Renren (a Facebook copy) is okay in my opinion. But Baidu (the most popular search engine in China) is not as powerful as Google, especially for English pages and scholar.

            You can compare Baidu's result with Google's. Baidu's is not very useful.

            As I showed before, people usually say 胡(Hu) instead of 胡锦涛(Hu Jintao) , so the character "胡" was banned. Unfortunately, the firewall cannot really understand what you are trying to search, so all words containing 胡 get banned, including 胡萝卜(carrot). That's why we hate it.

            Most Chinese people don't care about the firewall because services outside the wall are seldomly used by them. But as a coder, I think it's really annoying :(

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

              Thank you for such interesting answer. Wish you one day you can search google without any obstacles ^_^

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

        Where there is a wall (Great Firewall) there is a ladder to climb and cross in. :)

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

Does anyone know the handle (if he has one ) of competitor 28, Eryk ?