Medium data structure and algorithm practice puzzle.
n players numbered 0 to n - 1 sit in a circle. Counting starts at player 0, and every k-th player counted is knocked out, with counting carrying on from the next player. Return the order they're knocked out in. This is the Josephus problem. Store the circle as a circular linked list in an array, next[i] being the player after i, and keep a pointer to the player before the one being counted. Removing a player is then one assignment: skip over them.
Solve it three ways: snap the jigsaw pieces together, fill in the blanks, or type it from scratch against the tests. This one is free.
Every line of the solution comes with a note explaining why it is there, and a step by step replay shows the code running. At level 3, where you type it yourself, you can ask for an AI mock interview on this problem that ends with a hiring manager's scorecard.
Then grow it into a real project with the Software Engineer button: this puzzle becomes the Entity Cache Tier, a pipeline you can run and download. See every Software Engineer project.
Browse all 576 puzzles