Игры
Готовиться с нами - ЛЕГКО!
Ошибка.
Попробуйте повторить позже
На столе лежат карточек с номерами от
до
каждый номер встречается по разу. Двое по очереди забирают себе по карточке со
стола. Если в какой-то момент один из игроков собрал
карточки с суммой
то он победил. Иначе объявляется ничья. Есть ли у
какого-нибудь из игроков выигрышная стратегия?
Разместим все карточки в квадрате как показано на рисунке (составляем так называемый магический квадрат).
Заметим, что игрок выиграл тогда и только тогда, когда он первый забирает себе целый столбец, целую строку либо целую
диагональ (сумма чисел на вертикалях, горизонталях и диагоналях магического квадрата постоянна, в нашем случае —
). Будем отмечать карточки, которые забирает
-ый игрок крестиками, а карточки второго — ноликами. Наша игра
свелась в игру в крестики-нолики. Но, как известно, при правильной игре в крестики-нолики, ни у кого нет выигрышной
стратегии.
Ни у кого
Ошибка.
Попробуйте повторить позже
Кащей и Василиса играют в игру. Изначально пять одинаковых пустых вёдер ёмкостью стоят по кругу. За ход Кащей берёт изо рва литр
воды и распределяет его по вёдрам как ему заблагорассудится, а затем Василиса опустошает любые два соседних ведра. Кащей
выигрывает, если после какого-то его хода хотя бы одно из вёдер переполнится. При каких
Василиса может не допустить
этого?
Подсказка 1
Попробуйте поиграть за Кащея. Выработайте какую-нибудь стратегию, из нее подумайте о действиях Василисы.
Подсказка 2
Ответ а≥2. При меньших Кащей может в первое ведро наливать почти все, а остальное по капельке сливать в третье ведро. Поймите, почему это не работает при больших а.
Подсказка 3
Реализуете за Василису "жадный" алгоритм, сливая из наибольшей по объему пары вёдер.
Сначала покажем, что при емкости вёдер Кащей сможет добиться того, что ведро будет переполнено. Если
то Кощею
достаточно
литр поместить в одно какое-то ведро.
Иначе пусть где
и пусть ведра пронумерованы по кругу:
соответственно. Тогда пусть Кощей наливает в
первое ведро
а в третье
литров воды.
Василиса может опустошить только одно из ведер: либо первое, либо третье, потому что они не стоят рядом. Дальше будет действовать
следующим образом: если Василиса не опустошает первое ведро, то пусть Кащей просто дольет в первое ведро литр и в нем станет
поэтому это ведро переполнится. Иначе Василиса опустошила первое ведро, но тогда третье ведро осталось заполненным. Пусть
Кощей также наливает в первое ведро
а в третье
литров воды до того момента, когда либо Василиса не опустошает первое ведро
(тогда Кощей доливает в первое ведро
литр и побеждает), либо в третьем ведре станет
где
— число раз, когда Василиса не
опустошала третье ведро.
Теперь покажем, что при Василиса может не допустить переполнений. Будем играть за Василису. Всегда будем
выбирать такие
соседних ведра, в которых суммарно наибольшее число воды. Причем, если в нескольких парах ведер
суммарно поровну воды, то действуем как угодно. Тогда мы будем каждым ходом опустошать хотя бы
суммарного объема.
Заметим, что тогда после опустошения будет всегда оставаться менее
литров воды суммарно во всех ведрах. Тогда
объем любого ведра меньше
Получается, долив
литр, Кащей получит ведро объемом меньше двух
литров.
При
Ошибка.
Попробуйте повторить позже
На бесконечном шоссе находятся полицейская машина (ездит со скоростью до км/ч) и вор на угнанном мотоцикле (ездит со скоростью
до
км/ч). Полицейские не знают, в каком месте шоссе находится вор. Как им действовать, чтобы наверняка догнать вора? (Вор не
может съехать с шоссе или спрятаться).
Подсказка 1
Можем ли мы в нашем алгоритме с некоторого момента двигаться лишь в одну сторону?
Подсказка 2
Нет, потому что к этому времени мы проехали лишь конечный путь в другую сторону. Если преступник находился в этом направлении далее, то мы не сможем догнать его. Таким образом, в нашем алгоритме нам придется постоянно менять направление. В какой момент это лучше сделать?
Подсказка 3
Помните, что нам будет необходимо доказывать, что предложенный алгоритм работает. Доказательство было бы очевидным, если бы мы показали, что наше движение в некотором смысле "'эквивалентно" движению в одну сторону. Более формально, если бы показали, что умеем догонять объект, который будет двигаться со скоростью больше, чем преступник и меньшей, чем полицейский, скажем 90 км/ч, который в нулевой момент времени находился с нами в одной точке, то это бы решило задачу. Докажите почему, это правда. Как осуществить данный алгоритм?
Подсказка 4
Отправим мысленно в обе стороны дороги двух помощников, едущих со скоростью 90 км/ч. Будем догонять сначала первого, после второго, потом снова первого и т.д. Почему мы сможем реализовать наш алгоритм на каждом шаге?
Отправим мысленно в обе стороны дороги двух помощников, едущих со скоростью большей, чем скорость вора, но меньшей, чем скорость полицейской машины. Пусть полицейская машина догонит сначала первого помощника, потом — второго, потом — снова первого, потом — снова второго и т. д. Ясно, что когда-нибудь один из помощников перегонит угонщика, а значит, и полицейский когда-то догонит угонщика.
Ошибка.
Попробуйте повторить позже
Дима загадал целое число, а Петя пытается его угадать. На каждом шаге он выбирает целое число и задает Диме вопрос: «Верно ли, что
загаданное число равно
?».
(a) Если Петя не угадал, то Дима обязан перезагадать свое число, увеличив его на
(b) Если Петя не угадал, то Дима сообщает Пете, больше или меньше загаданное число, чем а затем обязан перезагадать
свое число, либо увеличив его на
либо уменьшив его на
(Петя не знает, какой из этих двух вариантов выберет
Дима).
Может ли Петя действовать так, чтобы через несколько шагов гарантированно угадать текущее загаданное число?
Подсказка 1, пункт а
Изначальное число произвольно, следовательно, мы должны научиться проверять каждое целое число на каком-то шаге. Как это можно сделать?
Подсказка 2, пункт а
Давайте научимся проверять последовательно числа 0, 1, -1, 2, -2, .... Как будут выглядеть наши вопросы?
Подсказка 3, пункт а
Каждый раз к числу, которое мы хотим проверить, давайте прибавлять сумму чисел, которые мы проверяли на предыдущих шагах.
Подсказка 1, пункт б
Как в произвольный момент времени понимать знак числа, не меняя его?
Подсказка 2, пункт б
Спрашивать равно ли наше число 0. Теперь было бы хорошо определять границы, в которых находится наше число, постепенно увеличивая его. Как это можно сделать?
Подсказка 3, пункт б
Спрашивать равно ли наше число 0. Теперь было бы хорошо определять границы, в которых находится наше число, постепенно увеличивая его. Как это можно сделать?
Подсказка 4, пункт б
Будем считать, что загаданное число положительно. Давайте спрашивать равно ли наше число последовательными степеням двойки. Почему рано или поздно мы услышим, что загаданное число меньше того, которое мы загадали?
Подсказка 5, пункт б
В каких границах находится загаданное число после этого вопроса?
Подсказка 6, пункт б
Пусть на текущий момент мы знаем, что загаданное число не превосходит по модулю некоторого значения M. Как путем задачи нескольких вопросов уменьшить проверяемое M?
(a) Пусть Дима загадал значение — , а Петя задаст вопросы следующего вида: «Верно ли, что загаданное число равно
?», где
— какое-то число,
— сумма чисел из предыдущих вопросов. По условию Дима увеличивал свое значение на число из вопроса Пети,
если Петя не угадал, поэтому Петин вопрос вида: «Верно ли, что загаданное число равно
?» — по смыслу эквивалентен вопросу:
«
»
Переберем значения в следующем порядке:
То есть первые несколько вопросов выглядят так:
«Верно ли, что загаданное число равно ?»
«Верно ли, что загаданное число равно ?»
«Верно ли, что загаданное число равно ?»
«Верно ли, что загаданное число равно ?»
Тогда Петя рано или поздно выберет значение равное изначально загаданному
и, спросив «Верно ли, что загаданное число равно
» угадает текущее число.
(b) Пусть Петя сначала задаст вопрос, который не изменит числа: «Верно ли, что загаданное число равно ?» Либо он угадает, либо
сможет узнать знак загаданного числа. Без ограничения общности далее считаем, что загаданное число положительное, иначе задаем
следующие вопросы с противоположным знаком. (И также будем считать - что если Петя угадал число в какой-то момент, то он
автоматически выиграл.)
Теперь пусть Петя задает вопросы вида:
«Верно ли, что загаданное число равно ?»
«Верно ли, что загаданное число равно ?»
«Верно ли, что загаданное число равно ?»
«Верно ли, что загаданное число равно ?»
…
«Верно ли, что загаданное число равно ?»
Если Дима ответит, что загаданное число в данный момент то после вычитания или прибавления к
числа
новое
число также будет строго положительным.
Петя будет задавать вопросы до тех пор, пока впервые не получит ответ, что в данный момент загаданное число Заметим,
что такой момент наступит, потому что
то есть как минимум на шаг с номером
где
— изначальное загаданное число, Дима ответит отрицательно на этот вопрос, так как каждый раз число увеличивалось максимум — на
сумму чисел во всех предыдущих вопросах.
Перед последним вопросом загаданное число будет лежать в границах то есть после изменения на
оно не
превосходит по модулю числа
Пусть Петя задаст вопрос: «Верно ли, что загаданное число равно ?» И тем самым поймет знак загаданного числа в данный
момент.
То есть теперь нам известны знак и границы, в которых лежит текущее загаданное число.
После этого, пока не угадаем число, будем задавать вопросы:
«Верно ли, что загаданное число равно ?», где
— текущее максимальное по модулю значение для загаданного числа (может
быть как положительным, так и отрицательным числом)
«Верно ли, что загаданное число равно ?»
После первого вопроса (про ) мы либо угадали число, либо "потенциальные числа"теперь изменили знак (то есть Дима вычел
из загаданного), либо сохранили знак (Дима прибавил
к загаданному числу). Следующий вопрос определяет прибавили или
вычли
и тогда мы снова знаем границы для загаданного числа, но теперь "потенциальных значений"на одно меньше. Значит,
такими вопросами число рано или поздно будет угадано.
Ошибка.
Попробуйте повторить позже
Иван Царевич хочет выйти из круглой комнаты с дверями,
из которых заперты на ключ. За одну попытку он может проверить
любые три двери, расположенные подряд, и если одна из них не заперта, то он в неё выйдет. После каждой попытки Баба-Яга запирает
дверь, которая была открыта, и отпирает одну из соседних дверей. Какую именно, Иван Царевич не знает. Как ему действовать, чтобы
наверняка выйти из комнаты?
Подсказка 1
Занумеруем двери числами 1, 2, 3, ..., n по часовой стрелке. Покажем стратегию игры за Ивана Царевича. Без ограничений общности, первым ходом проверим двери 1, 2, 3. Какие двери могут быть открыты на следующем шаге в случае неудачи?
Подсказка 2
Все, кроме 2. Как может выглядеть наш следующих ход?
Подсказка 3
Если мы при следующем шаге не будем проверять никакую из дверей 1, 3, то мы потеряем информацию о второй двери и начнем наш алгоритм сначала. Без ограничений общности мы хотим проверить так же дверь 3, проверять при этом дверь 2 нет смысла, мы знаем, что она закрыта. Таким образом, следующим ходом имеем смысл проверять лишь двери 3, 4, 5. Какие двери не могут быть открыты после данного хода?
Подсказка 4
Двери 3 и 4. Продолжите данный алгоритм по кругу. Почему он будет конечным?
Занумеруем двери числами например, по часовой стрелке. Пусть он будет рассматривать двери с номерами
для
Первой попыткой Иван Царевич проверяет двери и
Если после этого он не сумел выйти из комнаты, то двери
и
были заперты. Дверь
останется запертой даже после того, как Баба-Яга запрёт открытую и отопрёт одну из
соседних.
Второй попыткой Иван Царевич проверяет двери и
Если после этого он не сумел выйти из комнаты, то двери
были
заперты, а с учетом того, что
тоже заперта, можно утверждать, что двери
и
останутся запертыми и после действий
Бабы-Яги.
Пусть на шаге он открывает двери с номерами
И пусть ему известно, что
дверей с номерами
точно были закрыты перед его ходом. Тогда после проверки дверей Иваном Царевичем и действий Бабы Яги мы
будем знать, что
дверей с номерами
точно заперты, потому что перед ходом Бабы Яги были заперты
соседние к ним двери.
Тогда не более, чем за шагов Иван будет знать все запертые двери и сможет выбрать открытую.
Ошибка.
Попробуйте повторить позже
Состав из конечного числа одинаковых вагонов замкнут в кольцо. Вас с куском мела поместили в один из вагонов. Вы можете свободно ходить по составу и делать любые пометки на стенах вагонов. В любой момент вы можете сказать, сколько вагонов в поезде. Если угадаете, то Вас выпустят. Учтите, однако, что до Вас уже многие пытались пройти это испытание. Возможно, они оставляли на стенах какие-то пометки. Опишите алгоритм, который точно поможет спастись.
Подсказка 1
Получится ли обойтись без пометок совсем?
Подсказка 2
Нет. Давайте сделаем пометку. Как бы мы искали количество вагонов, если в них еще не было пометок?
Подсказка 3
Прошлись бы в одном направлении, считая количество пройденных вагонов, до первого, пометка в котором похожа на нашу. Что мешает сделать и при нашем условии? Как можно это исправить?
Подсказка 4
Кто-то до нас уже мог сделать подобную заметку. Как мы можем распознавать является ли эта пометка нашей или нет?
Подсказка 5
Давайте зачеркнем данную пометку и пройдем назад отсчитанное количество вагонов, до первого. Если метка в нем зачеркнута, то мы прошлись по всему вагону и количество вагонов на единицу меньше отсчитанного. Если нет, то повторим предложенный алгоритм.
Пометим вагон, в котором мы оказались какой-нибудь отметкой. Пройдемся по часовой стрелке по составу до тех пор, пока не наткнемся на похожую на нашу пометку, после этого сотрем ее (или зачеркнем), запомним количество вагонов, пройденных от стартовой позиции, и вернемся в начальный вагон, двигаясь против часовой стрелки. Если там пометка оказалась стертой, то мы прошли полный круг и знаем длину состава. Иначе повторим операцию. Вагонов конечное число, поэтому рано или поздно мы сотрем метку в стартовом вагоне и узнаем длину состава.
Ошибка.
Попробуйте повторить позже
На бесконечной шахматной доске стоят ферзь и невидимый король. Известно, что ферзь дал шах по горизонтали, и король ушел из под шаха. Докажите, что ферзь может ходить так, чтобы король наверняка еще раз попал под шах.
Подсказка 1
Можем ли мы придумать алгоритм, в котором шах гарантированно будет в позиции, когда король и ферзь находятся в одной горизонтали?
Подсказка 2
Нет, король может менять вертикаль каждый раз в противоположную сторону от той, куда мы должны были попасть на следующем шаге. Что это говорит о нашем алгоритме?
Подсказка 4
Наш алгоритм должен предполагать, что нам можем пригодится делать шах по вертикале или диагонали. Таким образом, мы хотим приблизиться к королю как можно "ближе".
Подсказка 3
В нулевой момент времени у нас есть информация по горизонтали, можем ли мы сохранять позицию таким образом, чтобы знать, что король находится к какой-то из трех данных горизонталей?
Подсказка 4
Да, например, если первым ходом сдвинуться на одну клетку вверх по диагонали, а все следующие — последовательно на три вниз (при первом ходе) и три вверх (при втором). Как при этом построить алгоритм таким образом, чтобы а) вне зависимости от направления по вертикале короля мы умели подходить к нему как можно "ближе"; б) в случае, при достаточно близком подходе, гарантированно делать шах?
Подсказка 5
Допустим, что мы уже знаем, что король находится справа от нас по вертикале. Тогда мы можем последовательно делать следующие два шага 1) По диагонали вправо-вниз на три клетки; 2) На три клетки вверх. Почему в таком случае мы гарантированно сделаем шах? Что делать в случае, если мы не знаем в направлении относительно нас по горизонтали находится король?
Подсказка 6
Для этого решения этой проблемы, вам может вам понадобится решить следующую известную задачу
"На бесконечном шоссе находятся полицейская машина и вор на угнанном мотоцикле. Полицейские не знают, в каком месте шоссе находится вор, но их скорость больше скорости вора. Как им действовать, чтобы наверняка догнать вора?"
Подсказка 7
Для ее решения нужно запустить двух "помощников" в разные помощники, скорость каждого меньше скорости вора, но больше скорости полицейской. Тогда достаточно последовательно догонять правого и левого помощника. Как эта идея поможет в нашей задаче?
Подсказка 8
Отправим мысленно в обе стороны две вспомогательные фигуры, перемещающиеся со скоростью 2.5 клетки за “шаг”. Пусть ферзь последовательно догоняет левого и правого помощника. Ясно, что когда-нибудь один из помощников перегонит короля, а значит, и ферзь когда-то догонит короля, то есть король когда-то будет под шахом.
Введем нумерацию горизонталей: пусть строка шахматной доски, на которой находится ферзь вначале будет -ой. Над горизонталью с
ферзем -
горизонтали, а под ней
Если король ушел из под шаха, то он находится либо на -ой, либо на
-ой горизонтали.
Пусть первым ходом ферзь сходит на одну клетку вверх. Либо король попадет под шах, либо он был на горизонтали с номером а
после своего хода может находиться только на
-ой,
-ой, или
-ой строчке.
Назовем “шагом вправо” следующие два подряд хода ферзя: По диагонали вправо-вниз на три клетки; (после такого хода либо
король попадает под шах, либо после своего хода может находиться только на
-ой,
-ой, или
-ой строчке.)
На три
клетки вверх; (либо король попадает под шах, либо после своего хода находится только на
-ой,
-ой, или
-ой
строчке.)
Аналогично “шаг влево”: По диагонали влево-вниз на три клетки;
На три клетки вверх;
Заметим, что когда ферзь делает “шаг влево” или “шаг вправо”, он сдвигается на клетки вправо или влево. Также король всегда
должен находится на полосе из
и
-ой горизонтали, иначе попадет под шах. И также можно заметить, что за один “шаг” король
будет атакован, если он находился между вертикалями начальной и конечной позиции “шага”. То есть задача сводится к тому, что нужно
доказать, что ферзь сможет догнать короля “шагами влево и вправо”, если за один “шаг” ферзь перемещается на
клетки по горизонтали,
а король максимум на
клетки по горизонтали.
Но это утверждение уже легко доказать: отправим мысленно в обе стороны две вспомогательные фигуры, перемещающиеся со скоростью
клетки за “шаг”. Пусть ферзь догонит сначала первого помощника, потом — второго, потом — снова первого, потом — снова второго и т.
д. Ясно, что когда-нибудь один из помощников перегонит короля, а значит, и ферзь когда-то догонит короля, то есть король когда-то будет
под шахом.
Ошибка.
Попробуйте повторить позже
Паша и Вова играют в игру, по очереди зачеркивая клетки доски . Исходно на доске зачеркнута только центральная клетка. За
один ход игрок должен выбрать диагональ (в диагонали может быть 1, 2 или 3 клетки) и зачеркнуть в ней все еще не зачеркнутые клетки.
Каждым ходом должна быть зачеркнута хотя бы одна новая клетка. Проигрывает тот, кто не может сделать ход. Начинает Паша. Кто из
игроков может выиграть вне зависимости от ходов противника?
Источники:
Приведем одну из возможных стратегий за Вову. Покрасим клетки доски в шахматном порядке так, чтобы угловые клетки были черными. В нечетных столбцах крайние клетки будут черными, а в четных белыми. Центральная клетка находится в 51-м столбце, поэтому она сама будет белой.
Каждая диагональ либо полностью черная, либо полностью белая. Обе стратегии будут симметричными, но разными для разных цветов. Для клеток белого цвета будем ходить симметрично относительно центрального столбца (осевая симметрия). Для черных клеток будем ходить симметрично относительно центральной клетки (центральная симметрия).
Докажем, что Вова всегда сможет сделать ход согласно стратегии. Для этого нужно убедиться, что своим ходом он будет зачеркивать хотя бы одну новую клетку. Для черных клеток две диагонали выбранная Пашей и центрально-симметричная ей, выбранная Вовой не имеют общих клеток. При этом Паша смог сделать ход, значит, на выбранной им диагонали была незачеркнутая клетка. Так как до хода Паши ситуация для черных клеток была центрально-симметричной, на Вовиной диагонали перед ходом Паши тоже была незачеркнутая клетка. Паша не мог ее зачеркнуть, значит, Вова своим ходом зачеркнет хотя бы одну новую клетку.
Для белых клеток ситуация несколько иная: две диагонали, проходящие через центральную клетку, симметричны относительно центрального столбца, но других симметричных белых диагоналей на доске нет. Опять же, перед ходом Паши ситуация на белых клетках осе-симметрична, то есть и на диагонали, выбираемой сейчас Пашей, и на диагонали, выбранной по стратегии Вовой, есть незачеркнутые клетки. Но единственная общая клетка, которую могут иметь осе-симметричные белые диагонали, зачеркнута с самого начала, поэтому Паша не может своим ходом зачеркнуть незачеркнутую клетку с Вовиной диагонали. Таким образом, Вова своим ходом зачеркнет хотя бы одну новую клетку.
Итак, мы доказали, что у Вовы всегда есть ход согласно стратегии. Так как ходов конечно (игра закончится не позже, чем через
хода, когда точно будут зачеркнуты все клетки), Вова победит.
Ошибка.
Попробуйте повторить позже
У Саши есть карточек с числами
Он пишет на доске число
и предлагает Диме сыграть в игру. Дима своим ходом
называет целое число
это число может быть разным от раунда к раунду. Саша выбирает
карточек, перед
которыми ставит знак «+», а перед остальными карточками ставит знак «-». Результат вычисляется и прибавляется к числу на
доске. Какой наибольший по модулю результат через несколько раундов может получить Дима, как бы ни действовал
Саша?
Сначала докажем, что Саша может всегда получать результат из отрезка Будем считать, что текущее число на доске
неположительно (в противном случае можно заменить все знаки в рассуждениях на противоположные). Разберем два случая для числа
называемым Димой на очередном раунде.
Случай Пусть
Тогда поставим знаки так: а остальные знаки расставим произвольным образом. Так как
результат будет положительным, и число на доске не станет меньше
С другой стороны,
результат не превосходит
значит, число на доске не станет больше
Случай Пусть
Если текущее число на доске не равно Саша может поставить знак минус перед числом
и плюсы перед остальными
знаками. Результат после вычислений будет равен
поэтому число на доске останется на отрезке
Если же текущее
число на доске равно
Саша может поставить знак минус перед числом
и плюсы перед остальными знаками.
Результат вычислений будет равен
поэтому следующее число на доске будет равно
за пределы отрезка Саша не
вышел.
Теперь докажем, что Дима может добиться результата Будем называть всегда
Если Саша ставит плюс перед числом
результат вычислений будет равен
и число на доске увеличится. Чтобы не допустить появления числа, превосходящего
Саше
нужно в какой-то момент поставить знак плюс перед другим числом. В такой ситуации результат вычисления отрицательный и по модулю
не меньше
Поэтому следующее число на доске не больше, чем
и
Дима добился желаемого результата.
Ошибка.
Попробуйте повторить позже
Клетчатая доска вся заполнена фишками. Петя и Вася играют в следующую игру: за один ход можно выбрать горизонталь или
вертикаль, на которой ещё остались фишки, и снять оттуда все оставшиеся фишки. Выигрывает игрок, после хода которого доска опустеет.
Первым ходит Петя. Кто выиграет при правильной игре?
Подсказка 1
Попробуйте заметить некоторую симметрию.
Подсказка 2
На самом деле, мы можем переставлять строки и столбцы, не влияя на ход игры. Как тогда можно перефразировать условие задачи?
Подсказка 3
Будем считать, что за один ход можно удалить крайнюю строку или крайний столбец. Попробуйте теперь придумать выигрышную стратегию.
Подсказка 4
А что, если какой-то игрок будет постоянно получать квадрат?
Заметим, что строки и столбцы можно переставлять, не влияя на ход игры. Значит, можно считать, что каждый раз убирается крайняя строка или крайний столбец, а оставшиеся фишки образуют прямоугольник.
Вася будет действовать так: если Петя убирает строку, Вася убирает столбец, и наоборот. Таким образом, оставшиеся фишки всегда
будут образовывать квадрат. Так будет продолжаться, пока оставшиеся фишки не образуют квадрат После этого Петя убирает две
фишки, а Вася — две оставшиеся.
Ошибка.
Попробуйте повторить позже
На клетчатой плоскости нарисован прямоугольник все клетки которого покрашены в синий цвет. Петя и Вася по очереди
перекрашивают в красный цвет две необязательно соседние синие клетки, расположенные либо в одной строке, либо в одном столбце.
Начинает Петя. Игрок, который не может сделать ход, проигрывает. Кто из игроков может обеспечить себе выигрыш вне зависимости от
игры соперника?
Подсказка 1
Глобально в этой задаче нужно придумать стратегию, которая использует какие-то простые ходы до тех пор, пока так можно. Как только становится нельзя, придумываются другие простые ходы и снова делаются до тех пор, пока есть возможность их делать.
Подсказка 2
Чтобы было проще придумывать стратегию, занумеруйте клетки в столбцах цифрами 1, 2, 3.
Пронумеруем клетки в каждом столбце сверху вниз числами
Играем за первого игрока. Сначала перекрасим две клетки
в
произвольном столбце. Каждый ход будем делать по следующему правилу. Если второй игрок ходит в клетки с номерами
в некотором
столбце, то мы ходим в клетки с номерами
для любого
в некотором другом столбце. Иначе после хода второго проверяем, есть ли
столбцы, в которых перекрашены клетки
, а клетка
— пустая. В таких столбцах выбираем клетки с номерами
Мы выберем не
больше
клеток, так как свои ходом второй игрок может создать не более двух таких столбцов. Далее, если мы выбрали
меньше
клеток, то до
клеток дополним любыми синими клетками с номерами
и перекрасим их. Делам так, пока
можем.
Предположим, что мы не можем сделать очередной ход по нашему правилу. Заметим, что до предыдущего хода второго игрока не
меньше половины перекрашенных клеток имели номер Тогда всего покрашено не более
клетки. То есть игра еще не
закончена, поскольку есть строка, в которой не перекрашены хотя бы
клетки. С другой стороны до последнего хода
второго игрока количество не перекрашенных клеток в первой строке было четно. Если мы не можем сделать ход
то это значит, что до этого второй игрок сделал ход
Тогда столбцов с перекрашенными клетками
не
образовалось. То есть в первой строке осталась синяя клетка, ее можно перекрасить вместе с другой клеткой из ее столбца —
противоречие. Если же мы не можем перекрасить две синие клетки из первой строки, то это означает, что первая строка полностью
закрашена.
Далее будем ходить произвольно. Предположим, что в некоторый момент мы не можем сделать ход. Тогда в каждой строке осталось не
более одной синей клетки, но при этом первая строка заполнена. Количество синих клеток всегда остается нечетным, причем в данный
момент их не больше Тогда ровно
клетка не перекрашена. А значит, всего было совершено ходов
то есть последний
ход сделали мы — противоречие.
Петя
Ошибка.
Попробуйте повторить позже
На столе есть две кучки камней, в которых соответственно и
камень. Двое играют в игру, делая ходы по очереди. За ход
разрешается взять кучку, убрать из неё какое-то количество камней (хотя бы один) и разбить оставшиеся в этой кучке камни на две
непустые кучки. Проигрывает тот, кто не может сделать ход. Кто выиграет при правильной игре: тот, кто делает первый ход, или его
соперник?
Источники:
Пусть первого игрока зовут Петей, а второго — Васей. Первым ходом Петя уберет из кучки один камень, а оставшиеся разделит на
кучки из
(про которую можно забыть) и
камней. Теперь докажем более общий факт: если на столе лежат кучки из
и
камней, то проигрывает тот, чья очередь ходить.
Пусть соперник Пети Вася сделал ответный ход в кучку или разделил кучку
на две, взяв из нее больше одного камня. У него
получились кучки из
и
камней, где
Тогда Петя следующим ходом создает две такие же кучки, получает позицию
и выигрывает, делая ходы, симметричные ходам первого.
Пусть Вася возьмет один камень из кучки и разделит ее на кучки из
и
камней. Тогда числа
и
будут разной
четности. Пусть
четно. Тогда Петя из кучки в
камней получит кучки из
и
камней (что возможно,
так как
после чего мысленно разделяет игру на две: одну на паре равных кучек
где он побеждает, делая
ходы, симметричные ходам первого, и вторую — на паре кучек
где он снова применяет стратегию, описанную
выше.
Таким образом, у второго всегда есть возможность сделать ход, и он побеждает в силу того, что всего в игре можно сделать не больше
ходов.
Тот, кто делает первый ход
Ошибка.
Попробуйте повторить позже
Круглый стол космического корабля разделен на секторов. В каждом секторе лежит по яблоку. Халк и Танос играют в следующую
игру. За один ход можно взять либо одно яблоко, либо два яблока из двух соседних секторов. Начинает Халк, проигрывает тот, кто не
может сделать ход. Кто из игроков может победить, как бы ни играл соперник?
Подсказка 1
Хм, стол круглый… А каким полезным свойством обладает круг(окружность), которое можно применить в этой задаче?
Подсказка 2
Да, окружность имеет центр симметрии! То есть, каждый сектор имеет симметричный ему сектор! Какую стратегию можно применить, зная этот факт?
Подсказка 3
Верно, второй игрок может просто повторять ходы первого игрока симметрично относительно центра! А может ли наступить момент, когда второй игрок не сможет сделать симметричный относительно центра ход?
Подсказка 4
Нет, второй игрок всегда сможет сделать ход, ведь каждый сектор не симметричен своему соседу и самому себе!
Приведем стратегию за Таноса, позволяющую ему победить. Будем повторять ходы Халка симметрично относительно центра круглого стола. Покажем, что у Таноса всегда есть ход согласно этой стратегии.
Пусть до какого-то момента Танос мог ходить симметрично. Тогда после его хода картинка симметрична относительно центра. Затем Халк взял одно или два соседних яблока. До хода Халка в симметричных секторах также были яблоки. Заметим, что никакой сектор не симметричен сам себе и не симметричен соседнему сектору. Значит, после хода Халка в симметричных секторах по прежнему лежат яблоки. Поэтому Танос может сделать симметричный ход.
Итак, мы доказали, что Танос всегда может сходить. Значит, он не проиграет. Меж тем игра точно закончится не позже, чем через
ходов. Значит, кто-то все-таки проиграет. Это точно не Танос, значит, проиграет Халк.
Танос
Ошибка.
Попробуйте повторить позже
На столе нарисован ряд из секторов (клеток). В каждом секторе лежит по яблоку. Халк и Танос играют в следующую игру. За один ход
можно взять либо одно яблоко, либо два яблока из двух соседних секторов. Начинает Халк, проигрывает тот, кто не может сделать ход. Кто
из игроков может победить, как бы ни играл соперник?
Подсказка 1
Так, игроки могут взять одно или два соседних яблока…А можно ли сделать так, чтобы между этими ходами не было разницы(то есть, чтобы для нас они были одинаковы)?
Подсказка 2
Да, если любой ход можно будет симметрично отразить, то можно считать их одинаковыми. А в каком случае можно отразить любой из ходов игрока?
Подсказка 3
Верно, если игрок делает ход в одной половине доски, то мы его отражаем в другой! Тогда, если первый игрок первым ходом возьмет два центральных яблока, тогда любой последующий ход второго игрок он сможет отразить в другом получившемся отрезке!
Приведем стратегию за Халка, позволяющую ему победить. Первым ходом возьмем два центральных яблока, оставив два отдельных ряда из
яблок каждый.
Дальше будем повторять ходы Таноса симметрично, то есть брать столько же яблок и с тех же мест, откуда только что взял яблоки Танос, но из другого ряда.
Пусть до какого-то момента Халк мог ходить симметрично. Тогда после его хода картинка симметрична относительно центра. Затем Танос взял одно или два соседних яблока. До хода Таноса две части были симметричны. Значит, Халк может взять яблоки из симметричных секторов другого ряда.
Аналогично рассуждениям в предыдущем раунде проиграет Танос.
Халк
Ошибка.
Попробуйте повторить позже
Круглый стол космического корабля разделен на сектор. В каждом секторе лежит по яблоку. Халк и Танос играют в следующую игру.
За один ход можно взять либо одно яблоко, либо два яблока из двух соседних секторов. Начинает Халк, проигрывает тот, кто не может
сделать ход. Кто из игроков может победить, как бы ни играл соперник?
Подсказка 1
Если мы сможем получить симметричную картинку или хотя бы два промежутка секторов равной длины, то мы победили! Сделайте два первых хода, можно ли добиться симметрии?
Подсказка 2
Да, за первые два хода игроки могут взять либо 2, либо 3, либо 4 яблоки. Но второй игрок точно сможет сделать так, чтобы было взято ровно 3 яблока! А каким должен быть первый ход второго игрока, чтобы после него получились отрезки равной длины?
Подсказка 3
Верно, его ход должен быть симметричен ходу первого. То есть, после хода второго игрока на столе останется два промежутка по 9 секторов! Какую стратегию будет использовать второй игрок?
Приведем стратегию за Таноса, позволяющую ему победить. Первым ходом Халк может забрать одно или два яблока. Разберем эти два случая отдельно и приведем для каждого из них ответный ход Таноса.
Пусть Халк первым ходом взял одно яблоко. Рассмотрим два соседних сектора, противоположных тому, откуда Халк взял яблоко, и возьмем по яблоку оттуда.
Если же Халк первым ходом взял два яблока, рассмотрим один сектор, противоположной паре соседних секторов, откуда взял яблоки Халк, и возьмем одно яблоко оттуда.
Заметим, что в обоих случаях мы получили картинку, на которой есть два отдельных ряда по яблок в каждом. Значит, сейчас Танос
может воспользоваться симметричной стратегией и победить.
Танос
Ошибка.
Попробуйте повторить позже
Имеются две кучки монет: в первой — монеты, во второй —
монет. Аскар и Батыйнур играют в такую игру. За
один ход игрок из любой кучки берёт
монеты, а затем добавляет
монету в другую кучку. Проигрывает тот игрок,
который не может сделать ход. Аскар и Батыйнур ходят по очереди. Начинает Аскар. Кто выигрывает при правильной
игре?
Подсказка 1
Хм, числа 102 и 99… А может ли первый игрок их уравнять? И если он сделает их равными, то появится ли у него какая-то стратегия?
Подсказка 2
Да, первый игрок может взять две монеты из первой кучи и добавить одну моменту во вторую кучу! То есть, число монет в кучах стало одинаковым. Может ли первый игрок теперь начать отражать ходы второго игрока?
Подсказка 3
Конечно, ведь теперь первый игрок может всегда своим ходом получать кучи с равным количеством монет! То есть, он первым придёт к кучам, в каждой из которых 0 монет!
Первым ходом Аскар возьмёт монеты из первой кучи и положит одну во вторую. Тогда после этого хода в кучках будет по
монет.
Далее Аскар будет действовать симметрично. Заметим, что после каждого хода Аскара в кучках будет равное количество монет, причём
количество монет всегда будет уменьшаться на
Если после хода Аскара в каждой куче более
монеты, то у Аскара будет следующий
ход. Тогда игра закончится, когда в кучках будет ровно по
камню, причём ход будет за Батыйнуром. Значит, Аскар
выиграет.
Аскар
Ошибка.
Попробуйте повторить позже
В ряд выложены шариков. Паша и Вова играют в игру, делая ходы по очереди, начинает Паша. За каждый ход разрешается
покрасить один из еще не покрашенных шариков в один из трёх цветов: красный, жёлтый или зелёный (в начале игры
все шарики не покрашены). После того, как все шарики покрашены, победа присуждается Паше, если в ряду найдутся
три подряд идущих шарика трёх разных цветов; иначе победа присуждается Вове. Кто из игроков имеет выигрышную
стратегию?
Подсказка 1
Так, а что можно сказать про каждый шарик? Что может помешать найти отрезок из трёх разноцветных шариков?
Подсказка 2
Да, у каждого шарика есть сосед! Так вот, именно он и может помешать тому, чтобы нашлось три подряд разноцветных шарика. Тогда, что может делать второй игрок, чтобы не появилось трёх подряд идущих разноцветных шариков?
Подсказка 3
Верно, он просто будет красить соседа закрашенного шарика в такой же цвет! Тогда, можно разбить 2020 шаров на пары, каждая из которых будет одинакового цвета!
Для победы Вове достаточно добиться того, чтобы у каждого шарика был соседний того же цвета. Для этого поделим шарики на пары —
. Паша начинает и красит какой-то шарик из пары, после чего Вове нужно покрасить второй шарик из пары в
тот же цвет, что всегда можно сделать, действуя по такой стратегии.
Вова
Ошибка.
Попробуйте повторить позже
Есть кучи из
и
камней. Двое играют в игру, по очереди удаляя по одному камню из двух разных куч. Игрок, который
не может сделать ход (взять по камню из двух куч), проигрывает. У кого из игроков, начинающего или его соперника, есть выигрышная
стратегия?
Сначала возьмём по одному камню из куч и
. Далее, если второй игрок берёт из некоторых двух куч, то мы берём из двух
оставшихся. Так будем продолжать, пока можем делать ход. После каждой пары ходов будут оставаться кучки
. Если мы
не сможем сделать ход по нашей стратегии, тогда второй игрок на предыдущем шаге уменьшил
большие кучки, при этом в
меньших кучках камней нет. Поэтому осталась позиция
. Тогда просто взяв из двух непустых куч по камню, мы
победим.
у первого игрока
Ошибка.
Попробуйте повторить позже
На столе лежат карточки, на которых написаны по разу все делители числа причем на каждой карточке написан один из
делителей. Два игрока по очереди берут себе по одной карточке. Проигрывает тот, у кого число на одной из его карточек делится на число
на другой из его карточек. Кто выигрывает при правильной игре?
Поделим все карточки на пары: и
. Все карточки так разобьются, так как
не является квадратом. Будем играть за
второго и брать каждым ходом парную карточку к карточке первого. Если вдруг у нас оказались два числа
и
такие, что
кратно
, то у нашего соперника уже было два числа
и
, причем
кратно
, так как
— целое,
так как
кратно
, то есть первый бы уже проиграл. Значит, у нас всегда есть ход, а так как игра конечна, то мы
выиграем.
второй
Ошибка.
Попробуйте повторить позже
В двух кучах лежит по конфет. Двое игроков, Тор и Локи, по очереди берут любое количество конфет, но только из одной
кучи. Начинает Тор. Выигрывает тот, кто берет последнюю конфету. Кто из игроков может выиграть, как бы ни играл
соперник?
Приведем стратегию за Локи, позволяющую ему победить. Будем играть за Локи симметрично, то есть брать то же количество конфет, что и Тор, но из другой кучи. Покажем, почему у Локи всегда есть ход согласно этой стратегии.
Заметим, что после хода Локи, если он смог сходить, в кучках находится поровну конфет, то есть картинка симметрична. Значит, сколько бы конфет ни взял Тор из одной кучи, Локи всегда сможет взять столько же из другой.
Итак, мы доказали, что у Локи всегда есть ход согласно стратегии. Значит, Локи не может проиграть. Но игра когда-то закончится
(например, не позже, чем через ходов, ведь конфет в сумме всего
, а каждым ходом берется хотя бы одна конфета). Поэтому кто-то
все-таки проиграет. Это точно не Локи, поэтому проиграет Тор.