Generalized Cube Game

Piggybacking off of Nick’s 3D Cube Game here. Two prisoners are playing a game on a rectangular prism of dimension 101×100×99. This prism is made entirely out of unit cubes. The game starts with the bottom, front, right, cube selected. There are two players who take turns selecting cubes. Which ever player takes the top, back, left cube will have their opponents sentence added to theirs while their opponent gets to go free.

On their turn a player must select a new cube which is up to 2 units away in all dimension so long as they are not moving away from the final cube in any one of the dimensions. For instance: if the initial cube is (1,1,1) then (1,2,3) (1,3,3) (3,3,3) (1,1,2) would all be legal moves while if you had the cube (7,10,11) selected (6,10,11) would not be legal as the first dimension moved away from the terminal cube.

Should a prisoner opt to go first or second?

What if the prism is x×y×z units?

What if you are allowed to move up to k units away in any dimension?

Interesting generalization! I’d done the case with n-dimensions but still only allowed to move one in any direction. I think allowing for moving k in any direction might be more interesting.

I have an idea for a solution, but I have to work through the details.

I’m also thinking a generalization where you can move up to k in any direction, but there is some restriction on the total amount moved (could be a bound above or even below) could be interesting as well, but I haven’t had time to think about this one much yet.

I hadn’t thought about forcing you to move a certain number of them/no more than x of them. The solution I have doesn’t deal with that case very well, so I guess I have more thinking to do.

If you want another generalization to think of, you can also limit the number of dimensions you can simultaneously move in. I didn’t know how many versions to cram into one post tho so left it out.

Limiting dimensions is interesting too. Yeah, we should come up with a way to organize generations since a lot of the riddles we do probably will have some good ones

Looks like when creating new posts there are tags you can apply:


we could maybe use those to organize versions of a puzzle?

That works for me

Ok I think I’ve got an answer to Ethan’s

Summary

For convenience, call the current dimension of a game to be be the number of coordinates greater than 1.

First, in the case of a 1D game of length n you want to go first unless n is in the form of m(k+1) + 2. Otherwise we can write n = m(k+1) + 2 + x uniquely if we say 1 <= x <= k. We then make our move to be x giving the other person m(k+1) + 2. In general we want the length of our move and the other prisoner’s move to sum to k+1. This will eventually lead to the other player being on position 2 and forced to move to the losing square.

For a game of greater than 1 dimension, you want to go first so long as at least one dimension is not in the form of m(k+1) + 1. The strategy is similar to the 1D but you make all the dimensions in the form of m(k+1) + 1 on your move. Given the other prisoner is moving from a dimension of m(k+1) + 1, they will move between 1 and k and you can respond to make the total movement in that dimension k+1 between both of your turns. This means you close out all dimensions. When you a reducing the game to 1 dimension, reduces it to m(k+1) + 2. You can subtract 0 through k from this last dimension so you can always reach a m(k+1) + 2.

This strategy extends to the case where you can move up to k_i in direction i.

I’ve got an idea for the case when the number of directions you can move in is restricted as well, but I need to think about the details.

1 Like