Тёмный

Задание 19-21 // КЕГЭ по информатике 2024 

Алексей Кабанов
Подписаться 40 тыс.
Просмотров 133 тыс.
50% 1

Опубликовано:

 

29 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 229   
@AbcDef-ls7ri
@AbcDef-ls7ri Год назад
Пересмотрел множество стримов по теории игр, и только ваш помог мне понять её. Спасибо большое
@RudyFoxAngel
@RudyFoxAngel 9 месяцев назад
Алексей, вечер добрый! Не знаю актуально или нет, но можно под косячит Петя или нет ввести параметр, который по умолчанию принимает значение 0 (не косясит) def fn(s, m, n=0): тогда последняя строчка примет вид return any(h) if (m - 1) % 2 == 0 else all(h) if n == 0 else any(h)
@ПриветяРита-я9п
@ПриветяРита-я9п 3 месяца назад
4 дня до егэ. ботаем.
@m4krozz216
@m4krozz216 3 месяца назад
БЛЯЯЯЯЯЯЯЯЯ 2 ДНЯ
@kxsuha
@kxsuha 3 месяца назад
@@m4krozz216 полтора
@andreikagameprofit5333
@andreikagameprofit5333 3 месяца назад
иге зафтра.
@kxsuha
@kxsuha 3 месяца назад
@@andreikagameprofit5333 через 20 минут иге зафтра
@m4krozz216
@m4krozz216 3 месяца назад
@@andreikagameprofit5333 это пиздец
@melmon168
@melmon168 Год назад
просто невероятно
@sashafaldin6290
@sashafaldin6290 Год назад
Алексей подскажите пожалуйста, как правильно добавить "столько камней, сколько их в данный момент в другой куче".
@kompege
@kompege Год назад
Ну f(a+b,b,m-1) и f(a,b+a,m-1)
@impactvoids
@impactvoids 6 месяцев назад
Переписал под другую задачу и выдаёт ошибку в 5-ой строке. Написано: expected 'else' after 'if' expression. Вообще не получается устранить проблему. Решаю задачу 12108 КЭГЭ...
@kompege
@kompege 6 месяцев назад
Значит так переписал ))) В таких случаях код прикладывают
@impactvoids
@impactvoids 5 месяцев назад
@@kompege Алексей, простите, я невнимательный человек... Всё супер, всё получилось, код реально работает и шаблон очень маленький, легко запомнить, спасибо за труд!!!!♥️♥️♥️♥️
@AndrewRyzhenkov
@AndrewRyzhenkov Год назад
в чем проблема? ответ не совпадает. условия стандартные def f(a,b,m): if a+b>=144: return m%2==0 if m == 0: return 0 h = [f(a + 1,b,m-1), f(a * 2,b,m-1), f(a,b+1,m-1), f(a,b*2,m-1)] return any(h) if (m-1)%2==0 else all(h) print('19)',[s for s in range(1,142) if f(s,2,2)]) print([s for s in range(1,142) if (not f(2,s,1)) and f(2,s,3)]) print([s for s in range(1,142) if (not f(s,2,2)) and f(s,2,4)])
@kompege
@kompege Год назад
А задача то какая?
@AndrewRyzhenkov
@AndrewRyzhenkov Год назад
@@kompege задача из сборника крылова 15 вариант
@kompege
@kompege Год назад
@@AndrewRyzhenkov А ничего что там ПРОИЗВЕДЕНИЕ куч, а не сумма
@AndrewRyzhenkov
@AndrewRyzhenkov Год назад
я понял. спасибо большое
@rodioniskhakov905
@rodioniskhakov905 Год назад
Не понял 21 задание на проверку ходов из статграда. С чего бы нам проверять, при каких S победа за два хода?
@kompege
@kompege Год назад
Потому что победа за три хода -> ход -> победа за два хода
@zym6958
@zym6958 Год назад
если ты понял объясни пожалуйста
@Мяфк-з9ъ
@Мяфк-з9ъ 9 месяцев назад
Объясните пожалуйста, что значит m%😢😢😢
@kompege
@kompege 9 месяцев назад
В нечëтных m достаточно наличия стратегии в одном из ходов, в чëтных стратегия должна быть из всех ходов
@goldnasher2237
@goldnasher2237 7 месяцев назад
С одной кучей далеко не всегда работает(
@kompege
@kompege 7 месяцев назад
И где же он не работает?)
@goldnasher2237
@goldnasher2237 7 месяцев назад
@@kompege сборник Полякова, 98-ое задание не решается через этот код(
@kompege
@kompege 7 месяцев назад
@goldnasher2237 решается, на канале даже разбор таких задач есть ) ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-v2buG-xADns.html
@goldnasher2237
@goldnasher2237 7 месяцев назад
@@kompege спасибо! Обязательно посмотрю
@kompege
@kompege 7 месяцев назад
@@goldnasher2237 напишите в чат курса по разбору задач
@ralkah52
@ralkah52 9 месяцев назад
Веб актуален? Просто он с КЕГЭ убран, а в начале веба, который там есть сказано, что в нём только интересные задания. Если тут базовые, то надо же начинать с них, но тогда почему его нет на КЕГЭ?
@kompege
@kompege 9 месяцев назад
Первый веб на курсе как раз про простые задания
@ralkah52
@ralkah52 9 месяцев назад
@@kompege Извиняюсь, либо не прогрузилось, либо не заметил, сейчас всё верно.
@frodobaggins5756
@frodobaggins5756 Год назад
Это просто нечто, спасибо! Спасибо за всё, что вы делаете, ваши вебы и наикрутейший сайт невероятно помогли мне и огромному количеству 11-классников по всей России, я просто невероятно благодарна вам за такое количество полезного материала в открытом доступе, разобранного максимально понятно. Успехов вам и всего наилучшего!
@faubi646
@faubi646 6 месяцев назад
88 дней до ЕГЭ. Ботаем.
@faubi646
@faubi646 5 месяцев назад
Уже 65(((.
@krotan7252
@krotan7252 5 месяцев назад
@@faubi646 Еще 65!)
@faubi646
@faubi646 5 месяцев назад
@@krotan7252 и то верно.
@dyatel8938
@dyatel8938 5 месяцев назад
@@krotan7252 63.
@алоха-д3ч
@алоха-д3ч 5 месяцев назад
уже 59..
@keuky8
@keuky8 Год назад
в школе учили экселем, репетитор учил ручками) если одну кучу руками еще можно, то с двумя как карта ляжет: не всегда в нужное русло силы направишь, потратишь еще больше времени) а с питоном все проще и, как мне кажется, понятнее) про эксель вообще молчу: там пока таблицы построишь, уже минут 5 потратишь
@pe4eneska23
@pe4eneska23 Год назад
ааааааа это такая имба!!! код максимально короток, но при этом так много смысла. стоит лишь 1 раз понять его принцип, и это в разы ускоряет решение, нежели решать другим кодом. Алексей, спасибо!
@krosh8982
@krosh8982 7 месяцев назад
просто нужно понимать - мы не отвечаем за ход соперника, поэтому должны учесть оба его хода ( 2 true ), но когда наступает наш ход - достаточно и 1 (1-2 true) правильного возможного ответвления (хода) ?
@monieKidd
@monieKidd Год назад
наконец-то допер. два дня осиливал идею, спасибо Алексей!
@Ryzzon
@Ryzzon Год назад
Этого алгоритма хватит на решение 90% всех заданий на теорию игр?
@Прогрессор
@Прогрессор Год назад
код огонь + 3 балла на егэ ( если тупенький запомни как стишок)
@krosh8982
@krosh8982 7 месяцев назад
если тупенький то пройди курс по питону хотя бы минимальный , либо послушай ещё раз непонятный момент! хватит вредных советов и деления на тупых
@bumyyammmee5468
@bumyyammmee5468 5 месяцев назад
​@@krosh8982моменты все понятны, а задания не решаются
@RevernBlitz
@RevernBlitz 6 месяцев назад
Как я понял суть any и all в том, что any применяется условно на нашем ходу и это означает, что если мы подумаем, то найдём хотя бы один путь к победе и конечно же выберем его, а all для противника означает, что он в безвыходной ситуации и ВСЕ его ходы приведут к поражению(нашей победе) и всё это работает на m==0 или на m%2==0 в зависимости от того, результат какого игрока нам нужен Подскажите, верно ли я всё понял 🙃
@kompege
@kompege 6 месяцев назад
Верно )
@Vanek_fff
@Vanek_fff 2 месяца назад
321 день до ЕГЭ, БОТАЕМ!!!
@никитанескажу-с9щ
@никитанескажу-с9щ 2 месяца назад
Я с тобой еее
@BAD_LAEV
@BAD_LAEV 3 месяца назад
1:11:00 смотрю на x1.5
@АнтонК-ш6о
@АнтонК-ш6о 10 месяцев назад
Алексей, добрый день. Будет ли корректно работать условие if (m - 1) % 2 == 0 если заменить его на if m % 2 != 0?
@kompege
@kompege 10 месяцев назад
Да, это одно и то же
@nenn422
@nenn422 10 месяцев назад
Брат, я сутки пытался разобраться в чем проблема у меня, когда писал (m - 1) % 2 != 0
@atikinich
@atikinich Год назад
До шёл до момент,когда задали вопрос не важно сколько куч,главное чтобы мозгов хватило,тут я понял что мозгов у меня нету,даже на одну кучу не понимаю
@blacknigaman2913
@blacknigaman2913 Год назад
просто запомни наизусть прогу, раз вообще никак
@_sanmo_7671
@_sanmo_7671 Год назад
очень круто, большое спасибо
@алексейсуворов-н2з
Огромное Вам спасибо смотрим Ваши стримы на уроках
@ИванЦуненков
@ИванЦуненков Год назад
Здравствуйте! Стоит ли ожидать задачу с двумя кучами на основной волне и в резерве 23 года? Заметил тенденцию, что остались только задачки с одной кучей, причем и в официальных вариантах, и в авторских вариантах на кегэ.
@kompege
@kompege Год назад
Это весьма вероятно
@mirfy3733
@mirfy3733 Год назад
Почему на 39:10 мы вписываем, что у Вани нет победы первым ходом, если у него нет лишь стратегии гарантированной победы? То есть в отличии от 2 вопроса, где нам чётко обозначено, что "Петя не может выиграть за один ход", в 3 вопросе сказано, что Ваня МОЖЕТ победить и за один ход тоже, просто не обязательно. Запутался на этом моменте. Условия разные у 2 и 3 вопросов, а запись по итогу одна и та же.
@anachorett
@anachorett Год назад
Спасибо, очень классный метод решения
@forward9150
@forward9150 Год назад
завтра егэ пора начинать готовиться
@gar1n56
@gar1n56 Год назад
Согласен
@Useroftherisingsun
@Useroftherisingsun Год назад
как сдал?
@forward9150
@forward9150 Год назад
@@Useroftherisingsun 70
@forward9150
@forward9150 Год назад
матан завалила@@Useroftherisingsun
@Aziz_Ergeshov
@Aziz_Ergeshov 6 месяцев назад
Как сдал
@asddsasi6423
@asddsasi6423 Год назад
1:10:57 - можно переделать возвращаемое значение функции проигравшего в нашу программу без смены all на any! Тем самым выполнить 3 условие 21 задания и эта переделка не повлияет на ответы предыдущих заданий. #Проверка ходов (1) (две кучи камней) def Win(c, d, l): return 0 if c==d else any([Lose(min(c,d)+1,max(c,d),l-1)[0], Lose(min(c,d)+3,max(c,d),l-1)[0]]) def Lose(a, b, k): return [1] if a==b else [0] if not k else [all([Win(min(a,b)+1,max(a,b),k-1), Win(min(a,b)+3,max(a,b),k-1)]), [Win(min(a,b)+1,max(a,b),k-1), Win(min(a,b)+3,max(a,b),k-1)]] print(min([i for i in range(1, 24) if i!=13 and Lose(13, i, 2)[0]]))#9 print(*[i for i in range(1, 24) if not Win(13, i, 1) and Win(13, i, 3)][:2])#6, 8 print(*[i for i in range(1, 24) if i!=13 and all((not Lose(13, i, 2)[0], Lose(13, i, 4)[0], True in Lose(13, i, 2)[1]))])#7, 19 1:29:00 - всё тоже самое только для одной кучи камней! #Проверка ходов (2) (одна куча камней) def Win(m, l): return [0] if m>=41 else [any([Lose(m+1,l-1), Lose(m+2,l-1)]),[Lose(m+1,l-1), Lose(m+2,l-1)]] if 50-m*2=41 else 0 if not k else all([Win(n+1,k-1)[0], Win(n+2,k-1)[0]]) if 50-n*2=45 else any([Lose(c+2,d,l-1), Lose(c,d+2,l-1), Lose(c*3,d,l-1), Lose(c,d*3,l-1)]) def Lose(a, b, k): return 1 if a+b>=45 else 0 if not k else all([Win(a+2,b,k-1), Win(a,b+2,k-1), Win(a*3,b,k-1), Win(a,b*3,k-1)]) print(len([(x,y) for x in range(1,44) for y in range(1,44) if x+y=71 else any([Lose(e+3,f,g,l-1)[0],Lose(e,f+3,g,l-1)[0],Lose(e,f,g+3,l-1)[0], Lose(e*2,f,g,l-1)[0], Lose(e,f*2,g,l-1)[0],Lose(e,f,g*2,l-1)[0]]) def Lose(a, b, c, k): return [1] if a+b+c>=71 else [0] if not k else [all([Win(a+3,b,c,k-1),Win(a,b+3,c,k-1),Win(a,b,c+3,k-1), Win(a*2,b,c,k-1),Win(a,b*2,c,k-1),Win(a,b,c*2,k-1)]), [Win(a+3,b,c,k-1),Win(a,b+3,c,k-1),Win(a,b,c+3,k-1), Win(a*2,b,c,k-1),Win(a,b*2,c,k-1),Win(a,b,c*2,k-1)]] print(min([i for i in range(1,59) if any(Lose(7, 5, i, 2)[1])]))#15 t = [i for i in range(1,59) if not Win(7, 5, i, 1) and Win(7, 5, i, 3)]; print(min(t), max(t))#14, 27 print(*[i for i in range(1,59) if not Lose(7, 5, i, 2)[0] and Lose(7, 5, i, 4)[0]])#24
@vitru4236
@vitru4236 Год назад
Здравствуйте, у вас некрректно записано условие для дна рекурсии, вы сами в начале ролика говорили, что нужно писать m == 0, чтобы мы находили факт победы на конкретном ходу. Именно этого от нас требовали условия задач, но вы писали m % 2 == 0. Рассмотрим пример: в куче 10 камней, конец игры наступает, когда количество камней в куче превысило 19, у нас есть операции: умножить на два или умножить на 3. Мы спрашиваем программу: можем ли мы выиграть третьим ходом? Она выдаст "да", но это неверно. P.S. Я не путаю с задачами где формулировка была: может ли игрок х выиграть за у ходов(там корректно условие m % 2 == 0)
@kompege
@kompege Год назад
Всё корректно. А теперь подумайте почему при выводе ответа для третьего хода я писал что not f(s,1), а для четвёртого хода not f(s,2).
@vitru4236
@vitru4236 Год назад
​@@kompege понял, спасибо, не обратил внимание
@galosini1959
@galosini1959 9 месяцев назад
Здравствуйте, не могли бы вы мне подсказать, Я правильно понимаю что если победа не гарантирована первым ходом, это значит что можно выиграть гарантировано первым ходом при неудачном ходе соперника?
@kompege
@kompege 9 месяцев назад
Ну в общем да. Если нет уточнения при любом ходе, то автоматически подразумевается, что в одном из ходов.
@mslnkv
@mslnkv Год назад
9:10 -Правильно ли будет сказать, что завершающему игроку, чтобы выиграть, достаточно чтобы один из ходов был выигрышным, но другому игроку, для того чтобы выиграть из этой позиции, нужно чтобы любой из его ходов привел к победе?
@kompege
@kompege Год назад
Ну типа того
@ДанилВласов-у4и
Этот способ подходит под любую задачу на кучи??
@kompege
@kompege Год назад
Да
@мастеркрая-э1ъ
@мастеркрая-э1ъ Год назад
Очень понятное объяснение, спасибо за решение!😺
@Leprekonek
@Leprekonek Год назад
4 дня чтобы понять
@whitehat-it-4096
@whitehat-it-4096 6 месяцев назад
на решу егэ половина задач, решенная таким методом - неверно
@kompege
@kompege 6 месяцев назад
Подсказка: проблема не в методе )
@whitehat-it-4096
@whitehat-it-4096 6 месяцев назад
@@kompege та я в шоке. Написал, даже сверил код с вашим, не работает. Удалил, написал заново, работает. Что за чудеса
@portal444
@portal444 6 месяцев назад
@@whitehat-it-4096m==0 пишете раньше a>числа
@bumyyammmee5468
@bumyyammmee5468 5 месяцев назад
​@@kompegeподскажите в чем тогда, я глупенький, а проблема та же
@bumyyammmee5468
@bumyyammmee5468 5 месяцев назад
​@@portal444попробовал, теперь ничего не выводит
@raflokrus5833
@raflokrus5833 3 месяца назад
привет,можно на задаче которая на 1:27 где кучи должны быть равны написать вторую функцию такуюже только all поменять на any и добавить в условие тогда оно тоже выдаёт правильный ответ и нет проблем def f(a,b,m): if a==b:return m%2==0 if m==0:return 0 if a
@Виктория-е1о6ч
@Виктория-е1о6ч Год назад
Здравствуйте, Алексей. Объясните, пожалуйста, почему для возвращения тру должно выполняться условие m%2==0, то есть четный ход, если ход Пети, например, нечетный? Или в процессе выполнения функции у них ходы как-то меняются с четного на нечетный и в итоге и у Пети и у Вани выигрышный ход обязательно будет четным? Тока не пойму как 🧐
@kompege
@kompege Год назад
Там отсчёт же в минус идёт, и поэтому неважно, с чётного или нечётного мы начинали. В обоих случаях игра должна заканчиваться, когда от счётчика осталось 0 ходов, 2 хода и т д.
@ginger-nut2211
@ginger-nut2211 5 месяцев назад
@@kompege а почему "в обоих случаях игра должна заканчиваться, когда от счётчика осталось 0 ходов, 2 хода и т д."?
@kompege
@kompege 5 месяцев назад
@@ginger-nut2211 в вебе про это рассказывается )
@satlykovs
@satlykovs 4 месяца назад
​@@kompegeа можно замерить m % 2 == 0 на m == 0 если игра должна заканчиваться на 0 ходе
@I_________d7maxz_________I
@I_________d7maxz_________I 4 месяца назад
Если в виде графа выведешь, то с обратных узлов рекурсии, самые последние узлы при m = 0 true выдают. И чередуется в обратную сторону, помечая победные кучи целевого игрока. Я тут дерево рисовал, я бы отправил, но тут нельзя.
@fns4287
@fns4287 Год назад
def f(a, b, m): if a == b: return m%2 ==0 if m == 0: return 0 if a
@fns4287
@fns4287 Год назад
это про три условия, просто ctrl c ctrl v функу и заменил all на any
@ja1to251
@ja1to251 Год назад
Наверно никода не пойму как решать тигра прогой,екселем или руками намного лучше у меня получается
@shanewalsch
@shanewalsch Год назад
реши руками или экселем 3 кучи )))
@ГолосСильных
@ГолосСильных Год назад
@@АндрейТурунен-ы4ж че сразу наезд?
@krosh8982
@krosh8982 5 месяцев назад
1:36:58 чоза ноль там, он что-то значит? там просто такой пик пересматриваемости просто, сам возвращаюсь к этому моменту и пока что пришёл к тому, что это написано для того, чтобы не удалять if not f().
@miriasbeeno6439
@miriasbeeno6439 Год назад
1:32:15 не понимаю как решать задачи с условием например "увеличить количество камней в первой куче в два раза или увеличить количество камней во второй куче в три раза" если нет условия про общий запас
@kompege
@kompege Год назад
h = [f(a*2,b,m-1), f(a,b*3,m-1)] В чём проблема то?
@miriasbeeno6439
@miriasbeeno6439 Год назад
@@kompege подрезал условие ,спасибо большое помогло😁😊
@suuushka
@suuushka Год назад
может кто нибудь написать хотя бы общий принципе программы на паскале? я питон вообще не знаю, буду очень благодарна
@suuushka
@suuushka Год назад
@tarivasanov спасибо вам огромное!!! я уж не знала, где найти
@Аля-е4й
@Аля-е4й 3 месяца назад
мужик, я люблю тебя
@pati_sus
@pati_sus Год назад
ඞඞඞඞඞඞඞඞඞඞඞඞ
@MrGrom-wz4wn
@MrGrom-wz4wn Год назад
Код удивительный, спасибо
@immortalwoods8797
@immortalwoods8797 3 месяца назад
Спасибо всем причастным за этот великолепный код
@kafif28
@kafif28 3 месяца назад
2 часа до егэ, ботаем упд 26 минут спустя: заботал 😈
@arseniykefirovich9209
@arseniykefirovich9209 Месяц назад
3:14
@КаренАванесян-ы9ф
@КаренАванесян-ы9ф 9 месяцев назад
Здравствуйте, а почему нельзя писать if p='+1': h=[f(s+2, m-1,'+2'), f(s*2, m-1,'*2')] ( у меня выдал ошибку),а через if p!='+1':h+=[f(s+1, m-1,'+1')] не было никакой ошибки?
@kompege
@kompege 9 месяцев назад
Значит ты что то не учëл. Если грамотно сделать, то разницы не будет
@arkadijefimow9663
@arkadijefimow9663 7 месяцев назад
Можете ответить, если один из игроков совершает неудачый ход то в функции всегда нужно использовать any ?(в независимости кто ошибся:Петя или Ваня)
@kompege
@kompege 7 месяцев назад
Да
@יאי
@יאי Год назад
Спасибо огромное!!
@mineralwater9375
@mineralwater9375 Год назад
неужели реально 3 кучи выпало на дв...
@Litalitvinsquad
@Litalitvinsquad 3 месяца назад
4 часа 17 минут до егэ😂
@salaga615
@salaga615 7 месяцев назад
1:20:50 - А разве можно идти по неудачному ходу Пети, если в задаче написано, что игроки играют рационально(то есть без ошибок)
@kompege
@kompege 7 месяцев назад
Ну так то у Пети все неудачные, он везде проигрывает
@shinratensei580
@shinratensei580 Год назад
если умеете иными способами решать, и есть понимание работы программы, то блок "Как работает функция наглядно", можете скипать. ничего нового не узнаете. имхо, утомляет сильно
@shinratensei580
@shinratensei580 Год назад
но код слишком имбалансный, этого не отнять
@KROKOTxAJaFANHAJIME
@KROKOTxAJaFANHAJIME 3 месяца назад
Ночь до егэ, начинаю
@Din9l
@Din9l 7 месяцев назад
1:45:07 в этой задаче мы условие k+s
@kompege
@kompege 7 месяцев назад
Учитывается через not f(s, k, 0)
@ЛунаФасоль
@ЛунаФасоль 3 месяца назад
наконец-то я поняла божжееееееееееееееееееееееееееее
@arkangel2667
@arkangel2667 Год назад
Алексей, 1:45:38 не могли брать range(1,44), потому что если в одной из куч будет 43 камня, не выполнится условие для другой кучи k>=1 и s>=1, потому что тогда там должно будет быть 0 камней. хотя с диапазоном (1,43) Ответ тот же
@bumyyammmee5468
@bumyyammmee5468 5 месяцев назад
А разве нельзя решить задачу проверка ходов II также, как решалась задача с порожением?
@kompege
@kompege 5 месяцев назад
Нет, нельзя.
@marssgm6499
@marssgm6499 Год назад
для начала лучше посмотреть старый стрим, или можно сразу этот?
@kompege
@kompege Год назад
Можно сразу этот
@marssgm6499
@marssgm6499 Год назад
@@kompege спасибо большое
@user-ub3zz2rx6d
@user-ub3zz2rx6d Год назад
на собственных ходах можно выбрать одно решение из двух, а на чужих должны быть оба
@kirillymshanov4689
@kirillymshanov4689 8 месяцев назад
спасибо огромное!
@alexbelyakov8845
@alexbelyakov8845 4 месяца назад
А как быть с условием для 2 кучек "Известно, что Ваня выиграл своим первым ходом после первого хода Пети. Назовите минимальное значение S, при котором это возможно." У меня ничего не выводит. Задача 4035 с сайта К.Ю.Полякова. Руками решил, долго но все же решилось. Хотелось бы кодом попробовать
@kompege
@kompege 4 месяца назад
В данном случае подразумевается неудачный первый ход Пети
@alexbelyakov8845
@alexbelyakov8845 4 месяца назад
@@kompege any ничего не дает. Видел с одной кучей проверку на нечетность. Приобщил эту прогу к 2 кучам но пока только добился ответа на 19 ) на 20 21 мимо
@088-u4u
@088-u4u 4 месяца назад
Спасибо большое, способ шикарный!
@kxsuha
@kxsuha 3 месяца назад
шикарный, но не идеальный
@088-u4u
@088-u4u 3 месяца назад
@@kxsuha почему?
@kxsuha
@kxsuha 3 месяца назад
@@088-u4u потому что не всегда работает
@aslfj1002
@aslfj1002 5 месяцев назад
а сейчас это актуально? ничего нового на этот год не появилось?
@kompege
@kompege 5 месяцев назад
Название и обложка намекают что актуально
@arseny_27
@arseny_27 8 месяцев назад
что значит "m % 2 == 0", никак не могу понять
@kompege
@kompege 8 месяцев назад
Произошла победа за m или m-2 или m-4 ... ходов
@GabiDiel
@GabiDiel Год назад
Алексей Михайлович, здравствуйте! Такой вопрос: Какова вероятность, что ТИ могут выдать не стандартную? то есть какой то тип с заощеренным условием или типо того, мне кажется многие завалятся на этом моменте используя дэфолтную прогу :{
@kompege
@kompege Год назад
Маловероятно. Всё таки 3 балла
@GabiDiel
@GabiDiel Год назад
@@kompege тоже так считаю, спасибо за ответ и за код!:3
@alpha_mega8506
@alpha_mega8506 Год назад
а что делать,если в условии сказано,что ходы не повторяются?
@kompege
@kompege Год назад
Посмотрите второй веб на курсе
@alpha_mega8506
@alpha_mega8506 Год назад
@@kompege спасибо
@Gemini-j1g
@Gemini-j1g Год назад
Здравствуйте, Алексей! На основе вашего обновлённого кода пытаюсь решить другое задание на 3 кучи с сайта Полякова (№4207) , а именно 3-й вопрос. Он звучит так: "Найдите два значения S, при которых выигрышная стратегия есть у Вани, но Петя может выбрать, каким ходом выиграет Ваня - первым или вторым." Ответ: 10 13; у меня выводит 7 10 13. Подскажите, пожалуйста, что нужно изменить в коде, по сравнению с задачей из видео (числа другие я поставил)?
@kompege
@kompege Год назад
Нужно дополнительно проверить каждое значение, можно ли из них выиграть первым ходом. Собственно на вебе я это и делал )
@Gemini-j1g
@Gemini-j1g Год назад
@@kompege спасибо!
@akweaaa
@akweaaa 5 месяцев назад
1:37:34 return sum(h) == 2 if m==3 else all(h) звучит лучше, чем "Мне кажется, что ответ 19"
@yupiter9403
@yupiter9403 Год назад
словил катарсис
@Htmlhacker
@Htmlhacker 5 месяцев назад
6:16 почему return m%2 ==0?
@kompege
@kompege 5 месяцев назад
Посмотрите первый стрим на курсе по этому заданию
@Рома-р1ц3я
@Рома-р1ц3я Год назад
Гений😎
@banan4ik0
@banan4ik0 6 месяцев назад
спасибо!
@loyhop5486
@loyhop5486 5 месяцев назад
а если 3 игрока?
@jonmoxley235
@jonmoxley235 4 месяца назад
Не будет
@kadze1674
@kadze1674 7 месяцев назад
должна с ошибкой
@naliwannn
@naliwannn 6 месяцев назад
Опечатка
@ЮлианБорисенко-м2и
круто
@plevouirx
@plevouirx 3 месяца назад
1:45:20 почему range до 44?
@yuskov2196
@yuskov2196 3 месяца назад
По условию s от 1 до 43 Ренж берёт: (конечное число-1) То-есть Допустим у нас range(1, 5) То у на с будет 1,2,3,4
@apyl1463
@apyl1463 3 месяца назад
@@yuskov2196но если s=43 то при любом k у нас не выполняется условие k+s
@yuskov2196
@yuskov2196 3 месяца назад
​@@apyl1463​ Действительно, сначала подумал, условия что он прописывает дальше решают эту проблему но нет. нельзя выиграть за 0 ходов Значит изначально камней не может быть >44 А значит в сумме их 44камней Скорее всего Алексей забыл про условие.
@viktoriia7781
@viktoriia7781 Год назад
Здравствуйте, метод крутой, но будет ли решение задач на две кучи с проигрышем?
@kompege
@kompege Год назад
vk.com/video-205865487_456239428
@p1hey_
@p1hey_ Год назад
Что значит m-1 ,когда заполняется список с ходами и почему четность проверяется именно у m-1 ?
@Askorfin
@Askorfin 8 месяцев назад
Это ходы всех игроков вместе взятых. Их количество задаётся в функции и уменьшается с каждым ходом каждого игрока. А так как игроков два, то чтобы узнать на чьём ходу закончилась игра, это m надо проверить на чётность.
@ОльгаЗамятина-з1й
Здравствуйте. Разобралась с кодом для одной кучи камней. Пыталась изменить его под условие: "При этом нельзя повторять ход, который этот же игрок делал на предыдущем ходу. Повторять чужие ходы и свои более старые ходы разрешается". Ничего не получилось(((
@kompege
@kompege Год назад
Посмотрите прошлый веб по похожему решению
@АртемМнацаканян-з8ш
Здравствуйте Алексей. Используя ваш код у меня почему-то не получается верно решать именно 19 номера. Например обычная задача с одной кучей: Ходы(+1, +4, *5), Победа(>=68). Правильный ответ 3, а программа выводит 13. При этом для 20 и 21 номера ответы верны. Подскажите пожалуйста, в чем может быть проблема?
@tema_straj4493
@tema_straj4493 Год назад
попробуй первое условие из 20 перенести на 19, мб поможет
@prostodude2320
@prostodude2320 Год назад
Столкнулся с такой же проблемой, но нашел решение: вместо "return any(g) if (h-1)%2==0 else all(g)" нужно вписать "return any(g) if (h-1)%2==0 else any(g)" тогда правильным ответом будет первый из выведенного списка.
@prostodude2320
@prostodude2320 Год назад
Решение, правда, очень костыльное, поэтому, как вариант, предлагаю 19ое делать ручками)
@tema_straj4493
@tema_straj4493 Год назад
@@prostodude2320 так это не в решении проблема, пролистай каждое задание в видосе, там есть задание с условием что первый ход неудачный и при таком условии мы заменяем all на any, а для 20,21 обратно меняем any на all
@prostodude2320
@prostodude2320 Год назад
@@tema_straj4493 а, и правда. Я не досмотрел до этого момента, когда комментил. Спасибо.
@arturaz2712
@arturaz2712 Год назад
А что делать если нельзя повторять ходы соперника?
@Nekollega
@Nekollega Год назад
ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-WY64fif5Eyc.html
@kompege
@kompege Год назад
ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-WY64fif5Eyc.html
@МихаилК-я7х
@МихаилК-я7х 5 месяцев назад
ничего не понятно
@masterenot
@masterenot 5 месяцев назад
а прошлый веб про решение руками смотрел? нужно сначала научиться руками решать самые простые , тогда и это будет легче даваться
@kkkku6
@kkkku6 7 месяцев назад
Что делать если в заданпии ходы s+1 и 4*s-3? в задании 19 ответ будет выдаваться неправильный
@kompege
@kompege 7 месяцев назад
А полное условие можно?)
@kkkku6
@kkkku6 7 месяцев назад
@@kompege там был неудачный ход, поэтому ответ неверный, я уже разобрался
Далее
CORTE DE CABELO RADICAL
00:59
Просмотров 2,3 млн
Ядерка-как это будет.
25:55
Просмотров 219 тыс.