✓ Задача о том, как одна лампочка освободила 100 заключённых | Ботай со мной

Поделиться
HTML-код
  • Опубликовано: 27 дек 2024

Комментарии • 661

  • @ttecnk
    @ttecnk Год назад +662

    У меня был вариант, что раз их в этой комнате собрали, значит они уже там все побывали

    • @TUZZ5000
      @TUZZ5000 Год назад +161

      По моему скромному мнению это шедевральный ответ.

    • @Zlobny-Kotyara
      @Zlobny-Kotyara Год назад +131

      Это как в старом анекдоте:
      Жена посылает программиста за хлебом и говорит:
      - Если будут яйца, возьми десяток.
      Программист пришёл с 10 батонами хлеба. На вопрос жены "зачем ты купил 10 батонов?" он ответил: "ну яйца же были, я и взял 10".

    • @ЧувакИзКосмоса
      @ЧувакИзКосмоса Год назад +22

      Тоже так сразу подумал, но от ролика оставалось пять минут, потому пришлось отбросить вариант

    • @Animal_2444
      @Animal_2444 Год назад +9

      Товарищ, ты Гений)

    • @Andrey495340
      @Andrey495340 Год назад +13

      @@Zlobny-Kotyara 🤣 (самый программистский анекдот в мире)

  • @НикитаФёдоров-о2о
    @НикитаФёдоров-о2о Год назад +168

    Программист. Догадался как решать после того как Борис сказал про то что мы вводим счётчика :)

  • @BeeHPok
    @BeeHPok Год назад +81

    Я впервые в своей жизни смог самостоятельно решить заявленно сложную логическую задачку. Причём после каких-то пяти минут размышлений ответ пришёл будто бы озарением! Спасибо за полученные эмоции!

  • @_ivan_salamatov8445
    @_ivan_salamatov8445 2 месяца назад +3

    Студент.
    Догадался сам, учусь на прогера)))
    Спасибо за классную головоломку, так доволен собой)))

  • @СветланаСтародворская-х7б

    После озвученного условия, пришла мысль, что раз человек может побывать возможно вообще раз в 10 лет, то никто оттуда не выйдет)

    • @northwardcore
      @northwardcore Год назад +9

      Ну типа это сработает в бесконечном промежутке времени, с бессмертными узниками)

    • @Николай1111-ц2г
      @Николай1111-ц2г Год назад +2

      Ага. Да ещё если этот человек окажется щотчиком.

    • @mikezador
      @mikezador Год назад +5

      @@northwardcoreи с бессмертной лампочкой ;)

    • @Pablo_de_Lexandro
      @Pablo_de_Lexandro Год назад +1

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

  • @АлександрФиланчук-х9ш

    Нужно больше подобных задачек на канале.

  • @MisterIncog
    @MisterIncog Год назад +6

    Урааа, обожаю, когда получается решить такие задачки самому, прямо как по алгоритму изобретения решений. В большинстве случаев в таких задачках стоит вчитываться в условие, чтобы понять, на что там акцентируется внимание. Перечитав условие довольно быстро пришло решение на моменте со «сколько угодно раз». Классно!

  • @sdf0as9f0a9sda0s
    @sdf0as9f0a9sda0s Год назад +12

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

  • @user-ggsebmukhaul
    @user-ggsebmukhaul Год назад +38

    На самом деле не такая уж и сложная задачка оказалась. Решение пришло минут за 5-10, но я сильно засомневался только потому, что с условием любых по времени перерывов между посещениями шанс того, что, вероятно, каждому из заключенный придётся побывать в камере около 100 раз, а счетчику минимум 100 раз, становится абсурдным вариант, что их выпустят до того, как они, мм, умрут от старости. Тем не менее, задачка чисто математическая и к реальным условиям не имеет никого отношения.

    • @LookIN-RUS
      @LookIN-RUS Год назад +2

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

    • @Махмуд-е9н
      @Махмуд-е9н 10 месяцев назад

      Если взять 10 человек, то все могут выйти за год

  • @superkerilltk6020
    @superkerilltk6020 Год назад +58

    БОЖЕ МОЙ Я РЕШИЛ ЕЕ САМ, Я ТАК СЧАСТЛИВ, СПАСИБО ЗА ПОДНЯТИЕ САМООЦЕНКИ И ПРЕКРАСНУЮ ЗАДАЧУ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

    • @СашаКовалевский-у4я
      @СашаКовалевский-у4я Год назад +2

      Поздравляю! Молодец

    • @Penobarbital
      @Penobarbital Год назад

      @@СашаКовалевский-у4я красавчик. А я бы задался вопросом, что если один из заключенных забудет включить свет, либо включит его повторно, у них же бесконечное количество повторений. Да и много чего может произойти за бесконечное количество времени)) В общем, я как лирик не могу согласиться, что данное решение является истинно верным ))

    • @user-lu3jb8oe5y
      @user-lu3jb8oe5y Год назад

      ​@@Penobarbital Но стратегия-то верная. А сработает ли она это уже неважно

    • @Penobarbital
      @Penobarbital Год назад

      @@user-lu3jb8oe5y это с точки зрения математика, где всё чётко и определенно, но, как правило, вне квантового мира это не работает )

    • @dexitti05
      @dexitti05 Год назад

      ​@@Penobarbital если заключенный забудет включить, ничего не произойдет, он просто отсрочит освобождение. А если включит повторно, то с высокой вероятностью они все умрут (каждое включение - 1 человек)

  • @ponnnnn
    @ponnnnn Год назад +6

    Решил сам, очень доволен собой. Спасибо за видео!

  • @Serg4nt
    @Serg4nt Год назад +9

    Почти догадался-не подумал про одного человека-счётчика и что только он может сказать-"здесь все побывали" а пытался решить, что бы каждый мог так сказать

  • @МаксимВ-п5ъ
    @МаксимВ-п5ъ Год назад +4

    Решил задачу довольно быстро, а потом долго не открывал этот ролик и думал, а какое же там "красивое" решение))))

  • @ivansaraiev7776
    @ivansaraiev7776 Год назад +31

    Задача понравилась. Сам думал долго. Думал о том как каждый может узнавать количество переключений. Но не придумал. Но нас словах о том что бы выбрать одного считающего сразу всё понял.

  • @ypsidshi8183
    @ypsidshi8183 Год назад +14

    Ура, новое видео!
    Благодаря Вашим роликам стал по-настоящему понимать и интересоваться математикой.
    Спасибо за Ваш труд!

  • @oho7nik
    @oho7nik Год назад +1

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

  • @rl55555
    @rl55555 Год назад +231

    Приходит заключённый с лампочкой в комнату, а там сидит начальник-грузин. Он спрашивает:
    -Все побывали в комнате?
    -Побывали, - отвечает заключённый.
    Начальник гасит лампочку...

    • @СтепаКарасиков
      @СтепаКарасиков Год назад +3

      ААЗАЗАХАЗХ

    • @ghtrtjshs
      @ghtrtjshs Год назад +17

      Вазелин, заходи...

    • @МакарЭпикунцев
      @МакарЭпикунцев Год назад +6

      гачи-фанфик на логическую задачу. Воистину эпоха метаиронии

    • @paveld4196
      @paveld4196 Год назад +2

      Ахах
      Ты попу мыл? 😂
      И гасит лампочку

    • @firsto
      @firsto Год назад +1

      я так понимаю на категорию б можно где угодно наткнуться

  • @bomuva
    @bomuva Год назад +3

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

  • @vyacheslavmarkhobrod7736
    @vyacheslavmarkhobrod7736 Год назад +5

    Спасибо. Классная задача. Жаль не догадался, хотя это чисто программная задача на массив и цикл do while. Обидно, не сообразил.

    • @Andrey495340
      @Andrey495340 Год назад

      Трушин решил в одном видео собрать всех программистов, да 🤣

  • @humaniora_for_all
    @humaniora_for_all Год назад +2

    Круто! Сразу посмотрели с детьми)

  • @vishnyaaaaaaaaaa
    @vishnyaaaaaaaaaa Год назад +1

    Очень понравилась задача, спасибо!

  • @ANanatoliy
    @ANanatoliy Год назад +9

    Я мыслил в верном направлении - что каждый только один раз меняет состояние, а Счетчика назвал - Избранным

    • @OHOTOJIE1
      @OHOTOJIE1 Год назад +2

      😂 Я назвал его Включатель. У меня все гасили а он включал лампочку.

  • @MoonLight-jr5hl
    @MoonLight-jr5hl Год назад +19

    Я лишь придумал решение с 7 лампочками при помощи двоичной системы счисления

    • @Loy_who_exists
      @Loy_who_exists Год назад +1

      То же самое:)

    • @rotmerka2820
      @rotmerka2820 Год назад

      А как?

    • @MoonLight-jr5hl
      @MoonLight-jr5hl Год назад +1

      @@rotmerka2820 пусть 0-когда лампочка не горит,а 1-когда лампочка горит,тогда у нас есть изначально число 0000000.когда человек,который еще ни разу не был в комнате, заходит, то он прибавляет к числу единичку.так можно получить 1111111(7единиц),то есть 2^7-1=128-1=127.когда человек заходит в комнату и видит число,равное 100, то говорит об окончании игры.

    • @Loy_who_exists
      @Loy_who_exists Год назад

      @@MoonLight-jr5hl Надо не забыть повесить 8 выключателей

  • @2tw_ant
    @2tw_ant Год назад +2

    У меня была та же мысль, но гасить лампочку если ты там не был.
    Но если лампочка выключена, но ты там не был, слегка выкрутить её на четверть оборота. Для лампочки в зависимости от произволителя надо около от 5 четвертей оборотов что бы вытащить
    Получается 5 человек может передать что они там были

  • @kusokKota
    @kusokKota Год назад +7

    Сразу в голову пришла идея на счет единого развого включения света, но не стерпел и посмотрел решение. Эх, а я так был близок :(

  • @willgoonandon3050
    @willgoonandon3050 Год назад +1

    Всё гениальное просто!

  • @ИсамилияРикоша
    @ИсамилияРикоша Год назад +1

    Очень круто и красиво!

  • @mr_bm
    @mr_bm Год назад +32

    Идея, что надо назначить одного «избранного», который будет считать пришла прямо во время оглашения условия, дальше до полного решения думал не больше пол-минуты. Но задачка прикольная.

    • @ННн-ш2ю
      @ННн-ш2ю Год назад

      Что так, что иначе, им освобождение не грозит.

  • @respectrespect546
    @respectrespect546 Год назад +5

    Поезд с вагонами в помощь😊 Версия 2.0: начальник тюрьмы бросает 10 кубиков с 11-мя гранями(от 0 до 10). Спасибо за контент, задача интересная.

  • @TSM_149
    @TSM_149 Год назад +2

    Задачка огонь!! 👍

  • @0imax
    @0imax 27 дней назад +1

    Второй раз смотрю, и второй раз не могу решить :( Подсознательно хочется, чтобы как только последний человек придёт в комнату, можно было дать ответ, но это далеко не так))

  • @G1uckman
    @G1uckman Год назад +1

    Решил. Очень круто. Спасибо.

  • @1917alexey
    @1917alexey Год назад +5

    Забавно, что раньше я не понимал это решение) Спасибо

  • @ИналКалицов
    @ИналКалицов Год назад +18

    Получилось решить минуты за 3, но решение то же. И в правду идея очень похожа на идеи решения кучи задач по программированию, единственное, мне кажется, человек который считал ошибётся в арефметике, и они все умрут

    • @whatisblink
      @whatisblink Год назад

      если я ничего не прослушал, то в камере никто не мешает царапать стены или вообще писать на них что то, так что счетчик может отметки ставить и нет проблем)

    • @wmrinchester
      @wmrinchester Год назад

      @@whatisblink в видео Борис отдельно пояснил, что нельзя. Подобные задачи всегда на логику, а не попытку как-то обхитрить условия.

    • @whatisblink
      @whatisblink Год назад

      @@wmrinchester а я и не пытался, это был ответ на предположение, что зек может затупить в арифметике, а я и сказал, как он может это посчитать, смысл решения от этого не меняется

    • @RedRus7689
      @RedRus7689 Год назад

      ​@@wmrinchester нельзя для других отметки делать, для передачи информации. Делать отметки для себя, в своей камере, чтоб не сбиться со счета - не является попыткой обойти условия...

    • @alexandrs1159
      @alexandrs1159 Год назад

      Для страховки от ошибок счетчику нужно считать не до 99, а скажем до 102. Или досчитав до 99 и сомневаясь, не ошибся ли он, счетчик может еще подождать и если в течении длительного времени, так никто лампочки и не включит, то можно предположить, что он не ошибся.

  • @AndreySkakun
    @AndreySkakun Год назад +21

    Я бы добавил к уже показанной стратегии обязанность каждого заключённого считать число переходов, 1 в 0. Т.е. если он увидел лампу уже включённой (не им самим), а потом увидел лампу уже выключенной. Это значит кто-то из обычных заходил, а потом счётчик заходил. Когда он насчитает таких переходов 97 (т.е. 97 обычных и счётчик уже заходили), то когда следующий раз будет 1 (лампа горит), значит уже 98 обычных (кроме него) и счётчик уже в комнате побывали. Можно заявлять, что уже все побывали.
    С небольшой вероятность, но возможно, что это событие наступит раньше последнего визита счётчика.

    • @Укажитеназваниеканала-б8з
      @Укажитеназваниеканала-б8з Год назад +6

      Мне кажется, что это не совсем верно. Если какой-нибудь номер 2 увидел включенную лампу, вышел, зашел счетчик - выключил, зашел номер 3 - включил, зашел опять счетчик - выключил, зашел номер 4 - включил, зашел счетчик - выключил, и теперь зашел номер 2 и видит выключенную лампу. По твоей идее произошел 1 переход, хотя на самом деле было два (3-> счетчик, 4-> счетчик).

    • @Укажитеназваниеканала-б8з
      @Укажитеназваниеканала-б8з Год назад

      Кажется понял, но шанс, что наступит 97 переходов крайне мал.

    • @AndreySkakun
      @AndreySkakun Год назад +1

      @@Укажитеназваниеканала-б8з В этой стратегии у всех событий вероятность маленькая, потому и время эксперимента выбрано бесконечным.
      Не придумал как посчитать, при каком количестве заходов вероятность успешного завершения игры, при игре по данной стратегии, достигнет 50%. Так сказать время полувыйгрыша стратегии.
      Любое дополнение или изменение стратегии, при котором количество заходов до полувыйгрыша уменьшится, следует считать улучшением стратегии.

    • @DemitryA
      @DemitryA Год назад +2

      ​@@AndreySkakun изначально собрался похвалить тебя, но нашел ошибку. Второй счетчик, увидевший 98 переходов, никогда не может быть уверен, что настоящий счетчик побывал в комнате. Поэтому стратегия не гарантированная, а рискованная.

    • @AndreySkakun
      @AndreySkakun Год назад +3

      "2-й счётчик" - это любой из 99-ти обычных заключённых. А чтобы знать наверняка, что счётчик уже был, достаточно увидеть всего 1 переход (1->0).

  • @igorabc191
    @igorabc191 Год назад +1

    Охранники их всех пускают по кругу))00(0)0)0))00)0 10:09

  • @whatisblink
    @whatisblink Год назад +8

    сначала не догадался, решил посмотреть решение, как только услышал идею со счетчиком, я сразу понял в чем прикол)) так что процентов на 50 я сам догадался)

    • @jmugwel
      @jmugwel Год назад +1

      Я наоборот дошел до счетчика, но не понял как считать. Почему то думал, что обязательно надо дать разные инструкции четным и нечетным заключенным.

  • @brickon832
    @brickon832 Год назад +1

    сразу понял, что лампочкой будут считать. Иного варианта не дано.

  • @АлексейПетров-р8й3е

    Давно знаю эту задачу, и сам решил точно также, но до сих пор уверен, что есть решение лучше.

    • @ГлебЛитвинов-ф4ш
      @ГлебЛитвинов-ф4ш Год назад +1

      Жиза... по-любому задачу коммивояжёра можно решить за О(х^n) и захватить весь мир, зная что p = np😅

  • @asadbekkhalilov9211
    @asadbekkhalilov9211 Год назад +2

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

  • @elenabelinskaia8002
    @elenabelinskaia8002 Год назад

    Супер задачка! И очень красивое решение!

  • @dexitti05
    @dexitti05 Год назад +2

    Мне удалось решить! Замечательная задача на бинарную логику, спасибо.

  • @5opka42Emelya
    @5opka42Emelya Год назад +3

    У меня был вариант, что каждый из них нажмëт кнопку 10 раз и типо когда лампочка перегорит, то уже тут по любому было 100 человек. (Это первое, что мне пришло в голову, я тогда даже не подумал, что могут вообще 1 человека постоянно только звать, а потом уже второго)

  • @ActMedInfo
    @ActMedInfo Год назад +2

    звучит красиво, но самого "счётчика" могут больше ни разу не повести в комнату. Или водить очень редко. А другие свет выключить не могут и ничего не делают. Все могут побывать не один раз... Т.е. когда следующий раз поведут счётчика, он выключит свет и посчитает 2. Но на самом деле все уже там побывали))

    • @РоманРоман-б2ы
      @РоманРоман-б2ы Год назад

      Если свет изначально выключен , а включить каждому можно только по 1 разу и счётчик только выключить может , то "2" никак не посчитает.

    • @ActMedInfo
      @ActMedInfo Год назад

      @@РоманРоман-б2ы с чего бы это? 1 раз он там побывал и выключил свет. Это уже 2, если с ним считать. А если без него, то второй раз, когда его приведут, после кого-нибудь, кто был 1-й раз и включил свет - и посчитает "2"

    • @РоманРоман-б2ы
      @РоманРоман-б2ы Год назад

      Изначально должен свет быть выключен а не включен быть.
      При этом не будет такого что ты описал. Тогда всё нормально пройдёт.

  • @kasitskyi
    @kasitskyi Год назад +9

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

    • @tufoed
      @tufoed Год назад

      Да, тогда каждому придется по два раза свет включать, ну и займет вдвое больше времени

    • @kasitskyi
      @kasitskyi Год назад

      @@tufoed ничего не понял

    • @tufoed
      @tufoed Год назад

      @@kasitskyi в соседней ветке комментариев есть более детальный разбор.

    • @sergioprofessor4038
      @sergioprofessor4038 Год назад +2

      ⁠@@tufoedнет. Если не известно первоначальное состояние лампочки то первый раз когда зайдет счетчик (а лампочка будет гореть он скажет 0 (не станет засчитывать а начнет с 2го посещения когда лампочка будет гореть) а если не горит значит он первый оказался в комнате). И да, это надо бы занести в условие задачи, но по умолчанию - логически если подумать то свет будет выключен на начало игры т.к. по идее после того как их соберут вместе и выведут из комнаты свет выключат и запрут комнату. Вероятно поэтому Борис и предложил так.
      П.с. Я бы добавил этот пункт в условие задачи, но что бы состояние лампочки было не известно на момент начала игры.

    • @tufoed
      @tufoed Год назад +1

      @@sergioprofessor4038 если лампочка горит, как понять, горела ли она самого начала или ее кто-то включил?

  • @timurpryadilin8830
    @timurpryadilin8830 Год назад +1

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

  • @ПавелКуликов-м9м
    @ПавелКуликов-м9м Год назад +4

    Не смог дойти до конца коментом, может все это уже было, но попробую собрать в одном месте. Задачу слышал уже давно, но там было 3 лампочки, что сбивало с толку и изрядно добавляло сложности. Хорошо бы найти предысторию задачи, было бы очень интересно.
    Начальное состояние лампочки не важно, достаточно договориться включать ее по два раза каждому.
    Что касается ускорения процесса, есть такой вариант - каждый становится счетчиком, то есть, каждый просто меняет состояние лампочки на противоположное. При этом он запоминает число своих "выключений" и действует так, что бы число его "включенний" не превышало число "выключений" на 1. Надеюсь, идея понятна, тем более, что скорее всего ее уже предлагали. Кажется, что при некоторых условиях этот подход может заметно ускорить процесс, но тут все зависит от того, по какому принципу их "вызывают". Вообще, было бы интересно обсудить и развить идею, может быть кто нибудь предложит более удобную площадку, чем комменты ютуба. Задачка того стоит, имхо )

    • @alexandertsimerman6280
      @alexandertsimerman6280 Год назад

      8

    • @artemcherkashin1928
      @artemcherkashin1928 Год назад

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

    • @ПавелКуликов-м9м
      @ПавелКуликов-м9м Год назад

      @@artemcherkashin1928 да, в некоторых случаях эта стратегия будет хуже исходной, мне тоже так кажется, я поэтому и написал: "при некоторых условиях". Но, условие случайного вызова несколько неопределенно: тут уже писали, в других комментах, что при некоторых распределениях вероятности вызова время, за которое сходится исходная стратегия может быть устремлено к бесконечности. Так что даже численный эксперимент не поставишь. Но, если дополнительно ограничить условия, например сказать, что всех вызовут по одному разу в случайном порядке, потом по второму заходу и т.д, то мой вариант будет многократно быстрее исходного. Примитив, конечно, но я не знаю, как бороться с дурными бесконечности исходного условия. Тут могло бы матмоделирование помочь, но для него, как раз, придется алгоритм вызова сделать более определенным, можно, в принципе, предлагать варианты и пробовать )

  • @AndroidsReview
    @AndroidsReview Год назад +1

    Минут 5 ушло. Сначала они оставляют свет включённым, и назначают одного который будет считать. Если заключённый заходит первый раз в комнату с включённым светом, то он выключает его. Когда назначенный заходит и видит выключенный свет, он запоминает что один уже побывал, прибавляет к сумме побывавших и включает лампу. Когда он досчитает до числа заключённых кроме себя, то он говорит что всё побывали.

  • @DemitryA
    @DemitryA Год назад +1

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

  • @vincentaace4939
    @vincentaace4939 5 месяцев назад +1

    Тем временем тот самый заключенный, который по приколу решил включить свет второй раз)

  • @ДенисРоманов-т4ь
    @ДенисРоманов-т4ь Год назад +1

    Ну да, красивое решение❤

  • @ioganess
    @ioganess Год назад +1

    Решил! Интересная задача, спасибо! "Счётчика" назвал "смотрящим" :)

  • @migorpresents8991
    @migorpresents8991 11 месяцев назад

    Еще не смотрел видео, вот моя идея: На митинге заключенные нумеруют себя для определенности. Начальника просят оставить свет включенным. Далее будет происходить следующее: все заключенные от 1 до n-1 выключают свет в конмнате (могут ТОЛЬКО выключать и ТОЛЬКО каждый один раз) Когда n-ный заходит в комнату, он, во-первых включает свет, во-вторых царапает черточку на руке. Когда n-ый нацарапет n-1 черточку на руке, они победили.

  • @pL1uXa
    @pL1uXa Год назад +2

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

  • @1NN0V4T10N
    @1NN0V4T10N Год назад +1

    Придумал решение минуты за 3, решил быстрее Бориса Викторовича получается😎

  • @ennr9108
    @ennr9108 Год назад +1

    Щас на 3:56. Подумал 3-4 минуты, придумал так, для удобства обозначу состояния 1- горит и 0-нет. Мы договариваемся, что изначально горит(не суть важно тогда просто состояния поменять), и если кто-то видит состояние 1, то он её выключает, но сделать так он может только 1 раз, но если состояние 0, то он просто уходит. Таким образом, я приду и увижу что если лампа в состоянии 0, то я её включу и уйду + с свой счётчик я добавлю +1 и так пока он не станет 99

  • @chivorotsen
    @chivorotsen Год назад +48

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

    • @balansodumar2619
      @balansodumar2619 Год назад +28

      Если первоначальное состояние лампочки не известно, то задача сложнее не становится - просто когда счетчик попадет в комнату, ему для безопастности вычислений нужно просто выключить лампочку и НЕ прибавлять 1 к счету. Другие заключенные также не должны трогать выключатель, пока лампочка будет гореть в комнате.
      Изменено: это работает только для включенного состояния лампочки, для выключенного механизм ломается - не следуйте моему решению)

    • @balansodumar2619
      @balansodumar2619 Год назад +8

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

    • @dragonsnyashers6309
      @dragonsnyashers6309 Год назад +15

      @@balansodumar2619 Если не известно, то твоя идея сработает только если лампочка была включена. Никто же не знает кого первым запустят в комнату.
      То есть, когда счётчик зашёл в комнату первый раз, а там горит лампочка, есть 2 варианта. Первый (который ты описал) лампочка была включена изначально. Второй лампочка была выключена изначально и 1 из других заключённых её уже включил.

    • @balansodumar2619
      @balansodumar2619 Год назад +6

      @@dragonsnyashers6309 Ну так я правильно вроде все написал, если заключенным не известно первоначальное состояние лампочки, для избежания ошибки в расчетах счетчику нужно пропустить в своем счету первую единицу, если лампочка горит в первый раз прихода счетчика. Если она не горит в первый раз прихода счетчика , то счетчик просто должен уйти и в следующий раз повторить вышеописанную мной процедуру. А когда счетчик прийдет в комнату следующий раз, то он просто должен следовать плану Трушина. Правильно обьяснил?

    • @wolffromnever4758
      @wolffromnever4758 Год назад +8

      @@balansodumar2619 заключённые могут включить лампочку ровно 99 раз. Суммарно. Если пропустить единицу, то "счётчик" может никогда не досчитать до 99.

  • @koishinov
    @koishinov Год назад +1

    Я в восторге

  • @ruinedyozhick
    @ruinedyozhick Год назад +1

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

    • @ActMedInfo
      @ActMedInfo Год назад

      Первый же зэк, побывавший дважды приведёт к сбою этой схемы подсчёта

    • @Rav3man
      @Rav3man Год назад +1

      Ваше решение не учитывает такую ситуацию:
      Приходит первый заключённый впервые - включает свет.
      Его снова заводят через какой-то промежуток - он выключает свет.
      Заходит счётчик - видит потушенный свет - говорит, что все тут были, и всех расстреливают

  • @konstantinsokolov5562
    @konstantinsokolov5562 Год назад +2

    почему я сразу до этого додумался... "да ты программист!"

  • @oro5421
    @oro5421 Год назад +2

    И я программист. За пару минут придумал РОВНО такое же решение. Только назвал его не счётчиком, а сторожем

  • @МаксимФомин-у4ф
    @МаксимФомин-у4ф Год назад +1

    Боже, какое простое решение для, казалось бы, сложной задачи

  • @ПашаГалкин-т8я
    @ПашаГалкин-т8я Год назад +1

    Прикольная задача 👍

  • @ДмитрийУляшев-р4г
    @ДмитрийУляшев-р4г Год назад +1

    В свое время я её решил, но есть два обязательных условия: 1. Во время этого эксперимента никто из заключённых не умрет; 2. Все заключённые умеют считать.

    • @Leopard327
      @Leopard327 Год назад

      Верно

    • @tehnik8810
      @tehnik8810 Год назад

      Считать достаточно уметь только счëтчику.
      Всем остальным достаточно запомнить, что каждый включает лампочку самостоятельно только один раз за всë время.

  • @cnfnbcn3227
    @cnfnbcn3227 Год назад +5

    Ну не знаю, насколько она прям сложная, я пока слушал БВ, без паузы придумал решение. Хотя может годы программирования дают о себе знать 😄, но идея ввести счётчик пришла сразу

  • @serge6038
    @serge6038 Год назад

    Решил за 5 минут Аж сам того не ожидал. В размышлениях шёл от обратного. У нас есть бинарная система вкл/выкл, а нужно посчитать 100 человек. Если каждый будет проверять значение в комнате, то нереально построить какую-то комбинацию всего из 2 значений. Тогда подумал, что только часть из них будет проверять. Но поскольку они не могут друг с другом общаться, проверяющий может быть только один. Ну и последнее - все остальные включают только 1 раз - уже было легко додуматься.

  • @niceplayer1276
    @niceplayer1276 Год назад +1

    Неделю думал над задачей, сразу решение не пришло, потом пару раз вспоминал о должке, и так, во время чистки зубов, додумался наконец-то😅

  • @khohloma
    @khohloma Год назад +1

    Офигенная логическая задачка

  • @mrshvecov
    @mrshvecov Год назад +1

    Прикольно 😃

  • @purity_one
    @purity_one Год назад +11

    А что по времени жизни заключённых?

    • @Alpac999
      @Alpac999 Год назад +5

      считается что они живут бесконечно долго

    • @leonidrozenblum6880
      @leonidrozenblum6880 Год назад

      @@Alpac999 Не обязательно жить вечно. Достаточно жить, пока они в тюрьме. А это -- конечное время.

    • @Alpac999
      @Alpac999 Год назад

      @@leonidrozenblum6880 конечное, но не известное заранее. Поэтому нужно жить бесконечно, иначе (если известно сколько они живут) экспериментатор придумает алгоритм как сделать чтобы они все умерли в тюрьме

    • @leonidrozenblum6880
      @leonidrozenblum6880 Год назад

      @@Alpac999 У них организм может быть настроен не на бесконечное время, а только на то время, пока они находятся в тюрьме. Т.е. это все таки конечное (хоть и неизвестное) время.

    • @Alpac999
      @Alpac999 Год назад

      @@leonidrozenblum6880 тогда экспериментатор может дождаться пока они умрут, а потом начать вызывать

  • @trimo1120
    @trimo1120 Месяц назад +1

    Сразу понял, что нужно использовать счётчик

  • @senyafairy
    @senyafairy Год назад +2

    огонь-задача!!!

  • @loneghost9445
    @loneghost9445 Год назад

    За первые 10 секунд после озвучивания условия придумал ответ. Изначально надо выключить лампочку и каждый человек если он ещё не включал лампочку и при этом лампочка не горит включает её, один человек считает количество включенных лампочек и каждый раз после себя выключает её

  • @gspidazrou939
    @gspidazrou939 8 месяцев назад

    О, нифига, решение пришло почти сразу же после озвучивания условия

  • @alexostroumov7887
    @alexostroumov7887 Год назад

    01.08.2023.
    Узнал в день выпуска. Придумал сейчас. Решения по сути одинаковы.
    Только "Счётчик" - "Избранный", включает свет только он, а другие в свое первое посещение его выключают и подсчёт ведётся по выключенным лампочкам.
    Спасибо за задачу)

  • @sg6948
    @sg6948 Год назад

    Боюсь, что к тому времени счётчика и его сокамерников уже съедят черви 😂

  • @danielvinokurov236
    @danielvinokurov236 Год назад

    Охрана тюрьмы пару раз включила свет сама и парам-парам-пам :)
    Догадался сам

  • @ПетрПетроа-ю9п
    @ПетрПетроа-ю9п Год назад +1

    элегантное решение. Нужно вводить счетчика)))))

  • @MichaelSolovyev-l2y
    @MichaelSolovyev-l2y Год назад

    Блин! Почти решил, совсем чуточку не докрутил. Стоило подумать на минуту дольше...

  • @КостикВалери
    @КостикВалери Год назад

    Привет! Был чемпионом по 10 заключённым. Задача была на элементах ру про 10 заключённых. Самая красота в выборах счетчика. Идея пришла независимо, на иностранных источниках её называют динамическим счетчиком для задачи на 100 заключённых. Красота моего решения была в ограниченном количестве заключённых. Выборы заканчиваются на 4 дня раньше. Иглобрюх довёл решение до абсолюта, спасибо, тебе, неизвестный друг!

    • @КостикВалери
      @КостикВалери Год назад

      Удалось довести до 92.39968 дня с первоначальных 120! С неофициалами можно довести на 0.0002-0.0003 лучше. Классная задачка, на пару выпусков тянет, с историей решений.

  • @ПертАндреев-п4ы
    @ПертАндреев-п4ы Год назад +1

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

    • @trushinbv
      @trushinbv  Год назад

      Да )

    • @user-is3d21e3s
      @user-is3d21e3s Год назад

      все не так и трудно. горящая лампочка это "да" был один раз. негорящая я уже был. Вот и считай горящие

  • @Alexey_Emelyanov
    @Alexey_Emelyanov Год назад +1

    Реклама у Бориса Викторовича - это что-то новое

  • @gh8499
    @gh8499 Год назад +1

    напомнило задачу про зеленые глаза и заключенных.

  • @proglife3936
    @proglife3936 Год назад

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

  • @atreidesson
    @atreidesson Год назад +1

    крутая задача, я понял как решается после фразы о том, что есть один "счётчик"

    • @user-is3d21e3s
      @user-is3d21e3s Год назад

      Считаю это не совсем верным. Где счетчик, там всегда куча вариантов.

    • @atreidesson
      @atreidesson Год назад

      @@user-is3d21e3s имеется в виду, что счётчик один, а не все вкладывают немного в подсчёт, как я думал до этой фразы.

  • @БоряДикий
    @БоряДикий Год назад

    Задачка на программерскую смекалочку. Лаек😼

  • @ИванКурбасов-е8у
    @ИванКурбасов-е8у Год назад +1

    1:28
    За один день привести 50 человек с интервалом в полчаса это, конечно, сильно :)

    • @tufoed
      @tufoed Год назад +3

      да норм. просто надо выбрать день, когда часы переводят

    • @santry6850
      @santry6850 Год назад

      Ощущение, что надзирателям заняться больше нечем, как заключённых туда сюда перемещать

  • @ЕхалоСохраняет
    @ЕхалоСохраняет Год назад +1

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

  • @АлексейНеизвестный-ь6р

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

    • @trushinbv
      @trushinbv  Год назад

      Если не известно начальное состояние, то решение несильно усложняется. Все должны по два раза включать лампочку, тогда после 198 выключений все точно были хотя бы раз

    • @АлексейНеизвестный-ь6р
      @АлексейНеизвестный-ь6р Год назад

      @@trushinbv эти 198 учитывают возможный случай : счётчик оказался самым первым кто вообще зашёл в комнату и лампа там горит?

    • @trushinbv
      @trushinbv  Год назад

      @@АлексейНеизвестный-ь6р да. Он после этого насчитает ещё 197. А это значит, что всех, кроме одного, он посчитает дважды

  • @vzmaxoff
    @vzmaxoff Год назад

    Супер! Спасибо!

  • @ИванБудько-й7ъ
    @ИванБудько-й7ъ Год назад +1

    В условие еще надо добавить, что они бессмертные. От сидения в одиночной камере ни у кого здоровья не прибавлялось пока. Счетчика выбрали, а он через месяц загнулся, и привет.

  • @usisel
    @usisel Год назад +1

    догадался, что считать включения выключения, но не сразу додумался до одного человека-счетчика

  • @ИльдарФизматов
    @ИльдарФизматов Год назад +1

    О, я тоже так додумался: каждый по разу включит, а какой-то один гасить будет. Конечно, так может много времени пройти, но тут время бесконечное. Только я не продвинутый программист, а больше математик.

  • @ВиталийШ-ю4ъ
    @ВиталийШ-ю4ъ Год назад +3

    И так прошло 30 лет и их всех освободили

  • @ЮрийЗлой-з8о
    @ЮрийЗлой-з8о Год назад

    Решение у меня такое же, только свет не включать, а выключать может один раз каждый заключенный. Так большинство заключённых будут сидеть в этой камере при свете, а это лучше чем без света😂

  • @ФедорПлатов
    @ФедорПлатов Год назад +7

    Интересно было б доказать что нельзя решить задачу быстрее чем за O(n^2)

    • @mega_mango
      @mega_mango Год назад

      Почему? Пронумеруем от 1 до 100, 1-ый "счётчик". Вначале заходит и включает второй, потом заходит и выключает первый. Затем также третий, потом опять первый. И того, мин время 2n, формально это вообще О(n)

    • @Андрейчикус
      @Андрейчикус Год назад

      @@mega_mango По условию задачи, приводят людей рандомно. Значит, кто-то может быть ни разу, а кто-то уже 10 раз. Конечно, если по условию каждый должен попасть хотя бы 1 раз к лампочке, то рано или поздно, это случится. Но в любом случае, в подобных задачах пренебрегают человеческим фактором тех, кто принимает решение выбора.

    • @mega_mango
      @mega_mango Год назад

      @@Андрейчикус а. Ага. Ну, я дэбик просто, я знаю что сложность алгоритма означает его самое долгое время выполнения, просто тут затупил что-то 😶

    • @ФедорПлатов
      @ФедорПлатов Год назад

      @@mega_mango если вероятность выбора каждого конкретного заключённого распределена равномерно -- то "счётчик" будет заходить в камеру каждый n-ый раз, и сделать это он должен n-1 раз. Вот и выходит что сложность n^2. Если попробовать смоделировать это программно то придётся использовать 2 цикла, что значит О (n^2) (если так нагляднее

  • @ИванКоновалов-д1ч

    Вы, вроде, не говорили о Наяальном состоянии лампочки. А раз так, то она изначально может быть включена, тогда счётчик может подсчитать первого заключённого за себя и таким образом на 99 счëт комнату посетят 98 человек

    • @trushinbv
      @trushinbv  Год назад

      Было сказано, что они сами решают, каким будет начальное состояние

  • @luckydog7807
    @luckydog7807 Год назад

    Как записать решение?

  • @tolich3
    @tolich3 Год назад

    Кстати, не-счётчик может включить свет не в первый раз, когда свет не горит, а, например, в пятый. Главное, чтобы только один раз. Из-за него, правда, _все_ сидеть будут дольше.

  • @mishlink6110
    @mishlink6110 Год назад +1

    Мое решение (пока что не смотрел ответ): выбираем одного человека. Он делает следующее: если лампочка включена, то он ничего не делает; если выключена, то включает и прибавляет к n единицу (в начале n = 0).
    Остальные: если лампочка выключена, то ничего не делают. Если лампочка включена и они до этого ещё ее не выключали, то выключают. Если уже выключали до этого, то ничего не делают.
    Таким образом все 99 людей выключат лампочку по одному разу. А тот исключительный человек включит 99 раз лампочку. Соответственно, когда будет 99 раз, то он может спокойно сказать, что все 100 заключённых были в этой камере.