Тема: Дерево игры. Поиск выигрышной стратегии.
Разбор задачи . Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежит куча камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может добавить в кучу один камень или увеличить количество камней в куче в два раза. Например, имея кучу из 15 камней, за один ход можно получить кучу из 16 или 30 камней. У каждого игрока, чтобы делать ходы, есть неограниченное количество камней. Игра завершается в тот момент, когда количество камней в куче становится не менее 22. Победителем считается игрок, сделавший последний ход, то есть первым получивший кучу, в которой будет 22 или больше камней.
В начальный момент в куче было S камней, 1 ≤ S ≤ 21. Будем говорить, что игрок имеет выигрышную стратегию, если он может выиграть при любых ходах противника. Описать стратегию игрока – значит описать, какой ход он должен сделать в любой ситуации, которая ему может встретиться при различной игре противника.
Выполните следующие задания. Во всех случаях обосновывайте свой ответ.
1. а) Укажите все такие значения числа S, при которых Петя может выиграть в один ход. Обоснуйте, что найдены все нужные значения S, и укажите выигрывающий ход для каждого указанного значения S.
б) Укажите такое значение S, при котором Петя не может выиграть за один ход, но при любом ходе Пети Ваня может выиграть своим первым ходом. Опишите выигрышную стратегию Вани.
2. Укажите два таких значения S, при которых у Пети есть выигрышная стратегия, причём
– Петя не может выиграть за один ход, и
– Петя может выиграть своим вторым ходом, независимо от того, как будет ходить Ваня.
Для каждого указанного значения S опишите выигрышную стратегию Пети.
3. Укажите значение S, при котором:
– у Вани есть выигрышная стратегия, позволяющая ему выиграть первым или вторым ходом при любой игре Пети, и
– у Вани нет стратегии, которая позволит ему гарантированно выиграть первым ходом.
Для указанного значения S опишите выигрышную стратегию Вани.
Постройте дерево всех партий, возможных при этой выигрышной стратегии Вани (в виде рисунка или таблицы). На рёбрах дерева указывайте, кто делает ход, в узлах – количество камней в куче.
Решение (способ 1, таблица):
Вопрос 1а. Последним ходом может быть «+1» или «*2». Выиграть последним ходом «+1» можно, если S = 21. Ходом «*2» можно выиграть из любой позиции при S 10 (сюда входит и 21!). Можно составить таблицу, в которой «В1» обозначает выигрыш за один ход:
S | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 |
|
|
|
|
|
|
|
|
|
|
| В1 | В1 | В1 | В1 | В1 | В1 | В1 | В1 | В1 | В1 | В1 |
Поэтому ответ должен быть такой:
«1а. Петя может выиграть за один ход при любом S 10. Он должен увеличить вдвое число камней, при этом в куче всегда получится не менее 22 камней.»
Вопрос 1б. Для ответа на этот вопрос нужно найти позицию, из которой все возможные ходы ведут к выигрышу за 1 ход, то есть к позиции, отмеченной в таблице как «В1». Например, это позиция при S = 10: ход «+1» ведёт в выигрышную позицию S = 11, а ход «*2» ведёт в выигрышную позицию S = 20. Поэтому позицию S = 10 отметим в таблице как «×1» (проигрыш за 1 ход):
S | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 |
|
|
|
|
|
|
|
|
|
| ×1 | В1 | В1 | В1 | В1 | В1 | В1 | В1 | В1 | В1 | В1 | В1 |
Ответ на вопрос 1б должен быть такой:
«1б. При S = 10 Петя не может выиграть в один ход, потому что при его ходе «+1» число камней в куче становится равно 11 (меньше 22), а при ходе «*2» число камней в куче становится равно 20 (также меньше 22). Других возможных ходов у Пети нет. Из любой позиции после одного хода Пети (это может быть 11 или 20), Ваня может выиграть своим первых ходом, удвоив количество камней в куче.»
Вопрос 2. Пете, для того, чтобы гарантированно выиграть на втором ходу, нужно из начальной позиции перевести игру в проигрышную позицию, отмеченную знаком «×1». Пока мы нашли одну такую позицию: S = 10. Петя может перевести игру в эту позицию из позиций
S = 9 (ходом «+1») и S = 5 (ходом «*2»)
В таблице отмечаем эти положения как «В2» – гарантированный выигрыш за 2 хода:
S | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 |
|
|
|
|
| В2 |
|
|
| В2 | ×1 | В1 | В1 | В1 | В1 | В1 | В1 | В1 | В1 | В1 | В1 | В1 |
Поэтому ответ должен быть такой:
«2. Из позиций S = 9 и S = 5 Петя не может выиграть в один ход, но Петя может выиграть своим вторым ходом, независимо от того, как будет ходить Ваня. При S = 9 ходом «+1» Пете нужно перевести игру в позицию S = 10, которая является проигрышной (см. ответ на вопрос 1б). При S = 5 Петя переводит игру в ту же позицию ходом «*2».»
Вопрос 3. Нужно найти такую позицию, из которой оба возможных хода Пети ведут в позиции, отмеченные в таблице как «В1» (выигрыш в 1 ход) и «В2» (выигрыш в 2 хода). Например, это позиция S = 8, из которой можно «попасть» только в S = 9 («В2») и S = 16 («В1»). Отмечаем эту позицию как «×2» – проигрыш в два хода:
S | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 |
|
|
|
|
| В2 |
|
| ×2 | В2 | ×1 | В1 | В1 | В1 | В1 | В1 | В1 | В1 | В1 | В1 | В1 | В1 |
Поэтому ответ должен быть такой:
«3. В позиции S = 8 у Вани есть выигрышная стратегия, которая позволяет ему выиграть первым или вторым ходом. Если Петя выбирает ход «+1», в куче становится 9 камней и Ваня выигрывает на 2-м ходу (см. ответ на вопрос 2). Если Петя выбирает ход «*2», Ваня выигрывает первым ходом, удвоив число камней в куче.»
Остается нарисовать дерево возможных вариантов игры из позиции S = 8. Для этого используем построенную таблицу:
Здесь красным цветом выделены позиции, в которых игра заканчивается.
Обратите внимание, что на каждом шаге мы рассматриваем все возможные ходы Пети и только один лучший ход Вани. Например, в позиции S = 11 Ваня может сделать ход «+1» и получить 12 камней в куче, но тогда он проиграет (Петя следующим ходом удвоит число камней и получит 24 камня). Этот ход мы не рассматриваем, потому что мы хотим доказать, что у Вани есть выигрышная стратегия – ему достаточно хода «*2», после которого он выиграет. В то же время нужно рассмотреть все возможные ответы Пети, чтобы доказать, что у него нет шансов на выигрыш при правильной игре Вани. В этом суть теории игр – добиться лучшего результата в худшем случае, то есть при безошибочной игре соперника.
Построенное дерево можно записать и в другой форме, например, «положив его на бок»:
Ещё один вариант – представить дерево в виде таблицы:
Начальная позиция | 1-й ход Пети (все варианты) | 1-й ход Вани (ход по стратегии) | 2-й ход Пети (все варианты) | 2-й ход Вани (ход по стратегии) |
8 | 9 | 10 | 11 | 22 (выигрыш) |
20 | 40 (выигрыш) | |||
16 | 32 (выигрыш) |
|
|
Решение (способ 2, математический):
Вопрос 1а. Петя выигрывает первым ходом:
Петя должен правильно выбрать одно из двух возможных действий (+1 ИЛИ *2), которое переведет кучу камней к состоянию ≥22. Таким образом, получаем совокупность неравенств:
Вопрос 1б. Ваня выигрывает первым ходом:
Любое действие Пети (И +1 И *2) должно привести кучу камней к состоянию . Только это может обеспечить выигрыш Вани на следующем ходу. Таким образом, получаем систему:
Вопрос 2. Назовите два значения S, при которых Петя может выиграть своим вторым ходом?
Петя должен выиграть, а это значит, он должен правильно выбрать один из двух возможных вариантов действий (+1 ИЛИ *2), которое переведет кучу камней к состоянию . Только это может обеспечить ему выигрыш при любом действии его противника Вани. Таким образом, получаем совокупность:
Вопрос 3. При каком S Ваня выигрывает своим первым или вторым ходом?
Сначала найдем, при каком S Ваня гарантированно выигрывает именно вторым ходом.
Таким образом, получаем, что нет такого количества камней S, которые гарантировали бы выигрыш Вани именно после его второго хода при любых действиях Пети.
Найдем, при каких значениях S Петя не сможет победить ни после первого, ни после второго хода. Т.е. любое действие Пети приведет кучу камней к такому состоянию, при котором Ваня сможет выиграть после 1 или после второго хода:
Совокупность решений первой и второй частей – и есть все множество решений третьего вопроса. Т.е. S = 8.
Построим дерево игры для S = 8
Решение (способ 3, «холмы и ямы»):
будем обозначать на рисунке выигрышные позиции «холмом» (возвышенностью), а проигрышные – «ямой» (впадиной); таким образом, задача игрока – «посадить соперника в яму», то есть создать для него проигрышную позицию
Вопрос 1а. Последним ходом может быть «+1» или «*2». Выиграть последним ходом «+1» можно, если S = 21. Ходом «*2» можно выиграть из любой позиции при S 10 (сюда входит и 21!). Таким образом, можно выделить первый «холм», стартовав с которого игрок выигрывает в один ход (число 1 над «холмом»):
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
|
|
|
|
|
S | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 |
Поэтому ответ должен быть такой:
«1а. Петя может выиграть за один ход при любом S 10. Он должен увеличить вдвое число камней, при этом в куче всегда получится не менее 22 камней.»
Вопрос 1б. Для ответа на этот вопрос нужно найти позицию, из которой все возможные ходы ведут к выигрышу за 1 ход, то есть к позиции, отмеченной в таблице как «В1». Например, это позиция при S = 10: ход «+1» ведёт в выигрышную позицию S = 11, а ход «*2» ведёт в выигрышную позицию S = 20. Поэтому позицию S = 10 отметим в таблице как «яму» и укажем внизу 1 (проигрыш за 1 ход):
|
|
|
|
|
|
|
|
|
| |
|
|
|
|
| 1 |
|
|
|
|
|
S | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 |
|
|
|
|
|
|
|
|
|
| 1 |
|
|
|
|
|
|
|
|
|
|
|
Ответ на вопрос 1б должен быть такой:
«1б. При S = 10 Петя не может выиграть в один ход, потому что при его ходе «+1» число камней в куче становится равно 11 (меньше 22), а при ходе «*2» число камней в куче становится равно 20 (также меньше 22). Других возможных ходов у Пети нет. Из любой позиции после одного хода Пети (это может быть 11 или 20), Ваня может выиграть своим первых ходом, удвоив количество камней в куче.»
Вопрос 2. Пете, для того, чтобы гарантированно выиграть на втором ходу, нужно из начальной позиции перевести игру в проигрышную позицию, отмеченную знаком «×1». Пока мы нашли одну такую позицию: S = 10. Петя может перевести игру в эту позицию из позиций
S = 9 (ходом «+1») и S = 5 (ходом «*2»)
В таблице отмечаем эти положения как «холмы» с индексом 2 – гарантированный выигрыш за 2 хода:
|
|
|
|
| 2 |
|
|
| 2 |
|
|
|
|
|
| 1 |
|
|
|
|
|
S | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 |
|
|
|
|
|
|
|
|
|
| 1 |
|
|
|
|
|
|
|
|
|
|
|
Поэтому ответ должен быть такой:
«2. Из позиций S = 9 и S = 5 Петя не может выиграть в один ход, но Петя может выиграть своим вторым ходом, независимо от того, как будет ходить Ваня. При S = 9 ходом «+1» Пете нужно перевести игру в позицию S = 10, которая является проигрышной (см. ответ на вопрос 1б). При S = 5 Петя переводит игру в ту же позицию ходом «*2».»
Вопрос 3. Нужно найти такую позицию, из которой оба возможных хода Пети ведут в позиции, отмеченные в таблице как «холмы» с метками 1 (выигрыш в 1 ход) или 2 (выигрыш в 2 хода). Например, это позиция S = 8, из которой можно «попасть» только в S = 9 («холм-2») и S = 16 («холм-1»). Отмечаем эту позицию как «яму» с меткой 2 – проигрыш в два хода:
|
|
|
|
| 2 |
|
| | 2 |
|
|
|
|
|
| 1 |
|
|
|
|
|
S | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 |
|
|
|
|
|
|
|
| 2 |
| 1 |
|
|
|
|
|
|
|
|
|
|
|
Поэтому ответ должен быть такой:
«3. В позиции S = 8 у Вани есть выигрышная стратегия, которая позволяет ему выиграть первым или вторым ходом. Если Петя выбирает ход «+1», в куче становится 9 камней и Ваня выигрывает на 2-м ходу (см. ответ на вопрос 2). Если Петя выбирает ход «*2», Ваня выигрывает первым ходом, удвоив число камней в куче.»
Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежит куча камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может добавить в кучу два камня или увеличить количество камней в куче в два раза. Например, имея кучу из 15 камней, за один ход можно получить кучу из 17 или 30 камней. У каждого игрока, чтобы делать ходы, есть неограниченное количество камней. Игра завершается в тот момент, когда количество камней в куче становится не менее 25. Победителем считается игрок, сделавший последний ход, то есть первым получивший кучу, в которой будет 25 или больше камней.
В начальный момент в куче было S камней, 1 ≤ S ≤ 24.
1. При каких S: 1а) Петя выигрывает первым ходом; 1б) Ваня выигрывает первым ходом?
2. Назовите три значения S, при которых Петя может выиграть своим вторым ходом?
3. При каком S Ваня выигрывает своим первым или вторым ходом?
Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежит куча камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может добавить в кучу три камня или увеличить количество камней в куче в два раза. Например, имея кучу из 15 камней, за один ход можно получить кучу из 18 или 30 камней. У каждого игрока, чтобы делать ходы, есть неограниченное количество камней. Игра завершается в тот момент, когда количество камней в куче становится не менее 33. Победителем считается игрок, сделавший последний ход, то есть первым получивший кучу, в которой будет 33 или больше камней.
В начальный момент в куче было S камней, 1 ≤ S ≤ 32.
1. При каких S: 1а) Петя выигрывает первым ходом; 1б) Ваня выигрывает первым ходом?
2. Назовите три значения S, при которых Петя может выиграть своим вторым ходом?
3. При каком S Ваня выигрывает своим первым или вторым ходом?
Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежит куча камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может добавить в кучу четыре камня или увеличить количество камней в куче в три раза. Например, имея кучу из 10 камней, за один ход можно получить кучу из 14 или 30 камней. У каждого игрока, чтобы делать ходы, есть неограниченное количество камней. Игра завершается в тот момент, когда количество камней в куче становится не менее 70. Победителем считается игрок, сделавший последний ход, то есть первым получивший кучу, в которой будет 70 или больше камней.
В начальный момент в куче было S камней, 1 ≤ S ≤ 69.
1. При каких S: 1а) Петя выигрывает первым ходом; 1б) Ваня выигрывает первым ходом?
2. Назовите два значения S, при которых Петя может выиграть своим вторым ходом.
3. При каком S Ваня выигрывает своим первым или вторым ходом?
Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежит куча камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может добавить в кучу один камень, добавить в кучу два камня или увеличить количество камней в куче в два раза. Например, имея кучу из 15 камней, за один ход можно получить кучу из 16, 17 или 30 камней. У каждого игрока, чтобы делать ходы, есть неограниченное количество камней. Игра завершается в тот момент, когда количество камней в куче становится не менее 25. Победителем считается игрок, сделавший последний ход, то есть первым получивший кучу, в которой будет 25 или больше камней.
В начальный момент в куче было S камней, 1 ≤ S ≤ 24.
1. При каких S: 1а) Петя выигрывает первым ходом; 1б) Ваня выигрывает первым ходом?
2. Назовите три значения S, при которых Петя может выиграть своим вторым ходом.
3. При каком S Ваня выигрывает своим первым или вторым ходом.
6