Search⌘ K
AI Features

Problem: Find the Winner of the Circular Game

Understand how to model and solve the circular elimination game using a queue data structure in JavaScript. Explore queue operations like rotating and removing elements to simulate the game process and determine the last friend remaining as the winner.

Statement

A group of n friends is seated in a circle, numbered from 11 to n in clockwise order. Specifically, moving clockwise from friend i leads to friend i + 1 for 11 \leq i << n, and moving clockwise from friend n wraps back to friend 11.

The game proceeds as follows:

  1. Begin at friend 11.

  2. Starting from the current friend, count k friends in the clockwise direction (including the current friend). The counting wraps around the circle and may count some friends more than once.

  3. The last friend counted is ...