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

наука на научном форуме  73x75, 2.17 kb

Tagged with →  

14 Responses to Задача для первокласника

  1. Remed:

    При безошибочной игре выигрывает первый игрок.

  2. Ki4aTa:

    : Чтото мне не верится что игрок считает в уме в двоичной системе. Наверняка какоето правило мнемоническое есть

  3. RetZZ:

    Спасибо, твой пост вдохновил меня на написание программки по решению обобщенной версии этой игры. Узнала, что такое рекурсивная функция. Мне ещё сказали, что рекурсивные функции используются для решения дифференциальных уравнений. Хотела для тренировки написать какую-нибудь такую штучку. Но не смогла придумать никакой интересной задачки, потому что плохо вообще соображаю в этих дифурах. Придумайте, а?

  4. Remed:

    : Хм… А что за обобщенная версия игры? И что из себя представляет программа?
    Программа строит граф всех возможных ходов игроков и выбирает те варианты, в случае которых у какого-либо игрока не остается выбора, кроме как проиграть, или нечто иное?

    Про диффуры: Вам нужно подобрать уравнение специального вида, которое будет решаться выбранным вами методом, ибо не всякое уравнение может решиться в символьном виде.

  5. RetZZ:

    : Обобщенная версия: для любого числа рядов и любого числа крышечек в них программа говорит проиграет или выиграет тот, кто начинает. Ведь эта игра — полностью детерминирована.

  6. HciCap:

    : программа побитово ксорит числа? круто! (=

  7. RetZZ:

    : да, типа того. ну, это собственно единственное, что мне пришло в голову. есть какие-то более элегантные пути?)

  8. Remed:

    : Извините, но я не понимаю: а в каком случае первый игрок не выигрывает при заданных условиях игры?

  9. RetZZ:

    : например 4 ряда по одной крышечке в каждом.

  10. RetZZ:

    : ой наоборот, 3 ряда.

  11. Remed:

    все разобрался.

  12. HciCap:

    : нет, просто название программы длиннее ее кода (=

  13. ZzzZZ:

    О, функция гранди пошла в обиход. Кстати, она объясняет почему побитовый ксор чисел это правильное ершение в данной задаче.

Добавить комментарий

Ваш e-mail не будет опубликован.