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

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

Всем привет!

АСМ карьера кончилась и я решил запустить канал на ютубе с фишечками и другим контентом! Пока что в планах выпускать видео, больше ориентированные на div 1 (ведь по простым темам уже есть 100500+ разных видосов)

https://youtu.be/nSGYYu9LCL0

Все срочно ставим лайк и подписываемся на канал, чтобы не пропустить следующий выпуск!

P. S. А если хотите предложить свою фишку, то пишите мне в личку (на кф или в вк)

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

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

Классное видео, но я бы на твоём месте поработал над названием, например: "Китайская теорема об остатках — то, о чем Сергей Семёнов не рассказывал Диане Шурыгиной"

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

Windows vs Linux

По каким-то причинам, операция взятия по модулю по-разному соптимизирована на разных операционных системах. По этой же причине целочисленное ффт где-то работает быстрее даблового, а где-то нет =)

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

    Может от проца зависит, а не от ОС?

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

      Я не уточнил это в видео, но речь про компиляторы c++ (а именно mingw vs gnu). Именно они оптимизируют взятие по модулю по-разному.

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

        Так как mingw юзает gnu, то дело даже не в компиляторах, можно считать, что они одинаковые =)

        На самом деле важно то, что на КФе 32-разрядная система, а на csacademy — 64-х разрядная. Объясню почему:

        Во-первых, чисто из анализа алгоритмов:
        binpow делает в среднем операций int64 % int32
        magic делает в среднем операций int32 % int32, и столько же операций int64 / int32, и много чего лишнего из-за рекурсии.

        В 64-разрядной системе при константом модуле в binpow'e целочисленное деление на константу оптимизируется умножением и битовыми сдвигами, отсюда такой выигрыш в производительности. В 32-разрядной системе такие оптимизации не работает, там в принципе отсутствуют команды для 64-битной арифметики, поэтому binpow не оптимайзится и соответственно выполняет больше сложных операций, от того и работает медленнее.

        При неконстантном модуле magic должна работать быстрее и там, и там.

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

          Так как mingw юзает gnu, то дело даже не в компиляторах, можно считать, что они одинаковые =)

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

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

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

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

Стримы доты вернутся?

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

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

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

Хороший канал и фишечки регулярно выходят