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

Автор peltorator, 4 года назад, По-русски

Привет!

Очередное видео! На на этот раз тема немного экспериментальная. В этом видео я в сжатом формате рассказываю все, что надо знать про операцию MEX для того, чтобы решать задачи, в которых она применяется.

Ссылка на видео

There's also the English version of this video here

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

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

Контест с задчами на mex.

P.S. Я уверен, что я что-то упустил, так что буду рад, если вы поделитесь в комментариях своими трюками про MEX.

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

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

Русская ссылка https://youtu.be/5iW84xlL0j0 ведёт на предыдущее видео

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

I love these types of explanations with added visual enhancements on it. Keep adding more videos like this!

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

Great work!Thanks

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

I thought the English was good, I could understand everything that you said. I really liked the video. Thanks!

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

This is top-notch stuff!! Please make more videos like this in English.

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

Great stuff! Looking forward to more tutorials!

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

In Mo's algorithm with range mex queries and point updates in $$$O(n^{\frac{5}{3}})$$$, how can you make transitions (add an element, remove an element, find mex) work in $$$O(1)$$$? Don't they require $$$O(\log n)$$$ (using a set)?

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

    EDIT: lemelisk pointed out that we can use sqrt decomposition instead of a set.

    And also you can check out the pinned comment. There's a $$$O(n \log^2 n)$$$ solution!

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

    Mex always will be $$$\le n$$$, so instead of set we can use fenwick/segment tree built on array $$$0 \ldots n$$$ — add/remove will be point updates and lifting for find mex. This substitution already improves constant factor by a lot.

    Further, let's replace this trees by sqrt decomposition built on the same array. Then lifting will become $$$O(\sqrt{n})$$$, but update will be $$$O(1)$$$. Since we make only $$$q$$$ liftings and a lot of updates, it will improve our time to $$$O(n^{5/3} + q \sqrt{n})$$$.

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

That's great!! One more request : You can add practice problems as well.
EDIT : The link to the contest was already there in the description of the video.
LINK : https://mirror.codeforces.com/group/1rv4rhCsHp/contest/321292