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

Автор MegaEnderman2009, история, 10 месяцев назад, По-русски

Недавно я решал задачу https://mirror.codeforces.com/contest/1923/problem/D и мое решение легло по времени, понятно, что я ее потом дорешал, но меня интересует вопрос, можно ли в принципе решить эту задачу имея такую логику? Вкратце, я создавал очередь в которой хранил Ноды, Нод в свою очередь описывает слайма, который на ходу номер turn имеет левого соседа left, правого — right и размер -sz. Ну и далее понятные переходы к соседям с сохранением пройденных состояний + break в случае, если ответы для всех слаймов найдены. Возникает вопрос, можно ли с подобной логикой найти отсечения для полного решения или нет? Вот моя попытка https://mirror.codeforces.com/contest/1923/submission/249467277

Полный текст и комментарии »

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

Автор MegaEnderman2009, история, 10 месяцев назад, По-русски

В прошедшем див2, а именно С задаче, я не понял, почему в случае "3 3 6" ответ "Нет"? Может кто-то найдет ошибку в моей логике, но смотрите. Саша знает, что он может проиграть не более X раз подряд, стало быть он точно знает, что если он уже проиграл X раз подряд, то следующая ставка будет ТОЧНО выигрышной. Тогда давайте ставить 1 монетку всегда, кроме того случая, когда игра ТОЧНО выигрышная, будем обозначать П — проигрыш, а В — выигрыш. Рассмотрим 2 случая, когда Саша проиграл X подряд и X+1 раз будет точно выигрышным, и случай когда ТОЧНО выигрышных ситуаций нет. Пусть у нас идет последовательность ПППВ, мы проиграли 3 подряд, значит следующая игра выигрышная, значит Саша может ставить на нее все деньги. Как говорилось ранее, на игры которые не точно выигрышные мы ставим 1 монетку, тогда за 3 проигрыша мы потеряли 3 монетки, 6-3 = 3, тогда мы ставим 3 и выигрываем 6, в сумме имеем 9, то есть, мы ушли в плюс. Теперь рассмотрим ситуацию, когда точно выигрышных игр нет, тогда мы будем ставить всегда 1 монетку. Несложно заметить, что худший случай — ППВППВ.... Тогда перед каждой победой мы проигрываем 2 монетки, 6 — 2 = 4, имея 4 монетки мы ставим одну и выигрываем 2, итого мы имеем опять 6 монеток. В условии сказано, что Саша должен иметь возможность бесконечно не уходить в минус "Другими словами, правда ли, что для любого целого числа n , Саша сможет делать ставки так, чтобы при любых их результатах, не противоречащих описанным выше правилам, в какой-то момент времени у него было хотя бы n монет." В чем я не прав?

Полный текст и комментарии »

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

Автор MegaEnderman2009, история, 11 месяцев назад, По-русски

Может ли кто-то объяснить решение, https://mirror.codeforces.com/gym/502024/problem/D , с помощью ДО, в разборе дп + бинпоиск, это решение я понял, но также было бы неплохо узнать иной способ, может ли кто-то объяснить?

Полный текст и комментарии »

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

Автор MegaEnderman2009, история, 11 месяцев назад, По-русски

Почему некоторые решения работают значительно быстрее при использовании разных компиляторов С++? Так, решая 1800F - Даша и кошмары
я столкнулся с тем, что при использовании компилятора 20-й версии решение не проходит по времени, при этом выполняется в итоге за примерно 4200мс, в то время как 17й компилятор справился с решением в среднем за 3650мс, отсюда вопрос почему? Само решение оно вот https://mirror.codeforces.com/contest/1800/submission/241615256 , у меня было предположение что это связано с прагмой на avx инструкции, но мимо, без нее решение работает аналогично по времени, может кто-то знает в чем дело и что именно 17й компилятор делает быстрее, и соответственно, когда его лучше использовать?

Полный текст и комментарии »

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

Автор MegaEnderman2009, история, 12 месяцев назад, По-русски

Может у кого-то есть теория и задачи по динамике на деревьях? А то тема цикавая, но страшная пока что

Полный текст и комментарии »

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

Автор MegaEnderman2009, история, 12 месяцев назад, По-русски

Почему все сейчас за то, чтобы сделать его анрейтинговым?

Полный текст и комментарии »

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

Автор MegaEnderman2009, история, 14 месяцев назад, По-русски

Всем привет, решая задачи я наткнулся на 1806C - Мастер последовательностей, не придумал как решать и решил посмотреть разбор. Его я тоже не понял, может кто-то может объяснить ее более доступно?

Полный текст и комментарии »

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

Автор MegaEnderman2009, 16 месяцев назад, По-русски

Всем привет, почему два одинаковых решения за исключением одного элемента (об этом позже) дают TL — https://mirror.codeforces.com/contest/1768/submission/219943996 И AC — https://mirror.codeforces.com/contest/1768/submission/219944645 соответственно. Где-то через час попыток на cppreference я узнал, что у std::set есть своя функция lower_bound, и по какой-то причине lower_bound(st.begin(),st.end()) работает намного медленнее чем st.lower_bound() и я не понимаю почему

Полный текст и комментарии »

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

Автор MegaEnderman2009, история, 16 месяцев назад, По-русски

Всем привет! Некоторое время назад я узнал про такую структуру данных как "стек рекордов" и соответствующую статью на сайте Пельторатора, но не понял задачи какого типа кроме "min/max слева/справа" можно с её помощью решать, может кто-то подскажет?

Полный текст и комментарии »

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

Автор MegaEnderman2009, история, 17 месяцев назад, По-русски

Всем привет, почему в одном и том же решении при использовании unordered_map я получаю TL, а при использовании map полное решение, разве unordered_map не быстрее обычного за счет того, что это хеш таблица? https://mirror.codeforces.com/contest/1850/submission/215051275 https://mirror.codeforces.com/contest/1850/submission/214992066

Полный текст и комментарии »

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

Автор MegaEnderman2009, история, 17 месяцев назад, По-русски

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

Полный текст и комментарии »

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

Автор MegaEnderman2009, история, 17 месяцев назад, По-русски

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

Полный текст и комментарии »

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