Skip to content

Instantly share code, notes, and snippets.

@ellismarte
Last active January 28, 2016 22:50
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ellismarte/7b91deff6811aebabe22 to your computer and use it in GitHub Desktop.
Save ellismarte/7b91deff6811aebabe22 to your computer and use it in GitHub Desktop.
# You are playing the following Nim Game with your friend: There is a heap of stones on the table, each
# time one of you take turns to remove 1 to 3 stones. The one who removes the last stone will be the winner.
# You will take the first turn to remove the stones.
# Both of you are very clever and have optimal strategies for the game. Write a function to determine
# whether you can win the game given the number of stones in the heap.
# For example, if there are 4 stones in the heap, then you will never win the game: no matter 1, 2, or 3 stones
# you remove, the last stone will always be removed by your friend.
def can_win_nim(n)
n % 4 == 0 ? false : true
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment