님 게임은 수학적 전략 보드게임입니다.
몇 줄에 숫자나 자연수 개의 돌을 두고 순서대로 돌아가면서 한 줄에서 정해진 수의 숫자를 제거합니다.
가져오는 숫자에는 상한이 있으며 무조건 1개만 가져와야 합니다.
여러 줄로 이루어진 경우, 아직 어려운 경우가 있으므로
우선 바둑돌 20개와 상한선 3개로 님 게임 규칙을 정해보겠습니다.
번갈아가며 바둑돌을 1~3개 가져가는 게임입니다.
마지막 바둑돌을 가져가는 사람이 승리합니다.
이런 수학적 전략 게임은 학생들에게 논리적 사고와 전략을 배우는데 도움이 됩니다.
재미있게 게임을 즐기면서 수학적 원리를 익힐 수 있습니다.
바둑돌 20개와 상한선 3개로 님 게임 규칙을 정해보겠습니다.
번갈아가며 바둑돌을 1~3개 가져가는 게임입니다. 마지막 바둑돌을 가져가는 사람이 승리합니다.
여기 님 게임의 간단한 Python 코드 예시입니다.
[Python 코드]
def nim_game():
stones = 20
current_player = 1
while stones > 0:
print(f"현재 돌의 개수: {stones}")
print(f"플레이어 {current_player}의 차례입니다.")
taken = 0
while taken not in [1, 2, 3]:
taken = int(input("돌을 몇 개 가져가시겠습니까? (1, 2, 3): "))
stones -= taken
current_player = 3 - current_player
print(f"플레이어 {3 - current_player}가 이겼습니다!")
nim_game()
사실 코드 아니라도 선택가능수+1로 나눈 수에 나머지 고려하면 금방 해결됩니다.
일명 베스킨라빈스 써리원게임이 이 방법으로 해결이 완벽하게 되죠.
한번 해 보세요.
'님게임' 카테고리의 다른 글
님게임(Nim Game)이 쏘아 올린 작은 공 (1) | 2024.03.13 |
---|