Обработка математики: 100%
 

printЗанятие 14

printИгра ним и другие

В беспристрастных играх можно применить специальные методы, позволяющие быстро определить, является ли позиция выигрышной или проигрышной для участника, делающего первый ход. Игра ним – это игра двух игроков, основанная на поочередном взятии камешков из одной или нескольких кучек. Ограничения на количество изымаемых из кучки камней могут быть различны. Рассмотрим сначала несколько вариантов игры с одной кучкой.
Пусть из кучки можно брать от 1 до k камней и первоначально в кучке n камней. Выигрывает тот, кто берет последний камень. Если в кучке от 1 до k, выигрывает первый игрок. Если в кучке k+1 камень, то любой ход первого игрока приводит к ситуации, выигрышной для второго игрока. Для кучки от k+2 до 2k+1 у первого игрока есть ход, после которого в кучке остается k+1 камень. Анализируя дальше, можно сделать вывод, что проигрышными являются кучки с числом камней кратным k+1. Результаты анализа удобно представить в таблице, в которой плюсом отмечены позиции выигрышные для первого игрока, а минусом — проигрышные. Пример таблицы для k=3.
Количество камней1234567891011121314151617
Результат игры+++++++++++++
Проигрышными являются те позиции, любой ход из которых приводит к выигрышной позиции. Заполнение таблицы результатов выполняется как в задачах динамического программирования, и этот способ можно использовать для решения задачи в общем случае. Мизерный вариант игры получается сдвигом результатов исходной игры на одну клетку.
Количество камней1234567891011121314151617
Результат игры++++++++++++
То есть проигрышными становятся кучки, в которых число камней n mod (k+1) = 1.
Рассмотрим следующую игру. За ход из кучки разрешается брать любое число камней являющееся степенью числа 2 (то есть 1, 2, 4, 8 и т.д.). Построим таблицу. Если в кучке 1 или 2 камня, то выигрывает первый игрок. Если 3 камня, то первый проигрывает. Для 4 и 5 камней опять выигрывает первый, оставляя второму кучку из 3 камней.
Количество камней1234567891011121314151617
Результат игры++++++++++++
Анализ таблицы позволяет сделать предположение, что проигрышными позициями для первого игрока будут кучки из 3m камней, так как в них не существует хода, с помощью которого он может получить проигрышную позицию. Не существует целого p такого, что (3m - 2p) mod 3 = 0, так как (3m) mod 3 = 0, а 2p mod 3  0.
Если можно брать от 1 до [n2] камней, то проигрышными будут позиции с числом камней 2, 5, 11, 23, 47, …, 3(2p-1)+2.
loading