Let $n \gt 2$ be a natural number. We consider the following game. Two players write a sequence of $0$s and $1$s. They start with an empty line and alternate their moves. In each move, a player writes 0 or 1 to the end of the current sequence. A player loses if his digit completes a block of $n$ consecutive digits that repeats itself in the sequence for the second time.
Prove that the game always finishes after finitely many steps.
The chapter in my book that contains this exercise deals with induction, but I think the proof needn't use that.
My proof idea:
There are $2^n$ different binary strings of length $n$. We can separate the string into blocks of length $n$, as we do not care which player will or will not repeat the sequence, it suffices two show that one of them must do it. The sequence will have to repeat itself, because with each formed block of length $n$ we exhaust one of the $2^n$ possibilities, as none of the blocks can be reused. Therefore the game must end in finite steps.
Does this make sense?