lastRemaining(n)
that takes the current size of the array n
as its argument.n
is 1, return 1, as it is the base case with only one element remaining.n
greater than 1, recursively call lastRemaining(n/2)
to simulate the elimination process on the halved array.2 * (n/2 + 1 - lastRemaining(n/2))
.