Stone Game III
Alice and Bob continue their games with piles of stones. There are several stones arranged in a row, and each stone has an associated value given as an integer in the array stoneValue.
Alice and Bob take turns, with Alice starting first. On each player's turn, that player can take 1, 2, or 3 stones from the first remaining stones in the row.
Each player's score is the sum of the values of the stones they have taken. Each player's score is 0 initially.
The objective of the game is to end with the highest score, and the winner is the player with the highest score; there could also be a tie. The game continues until all stones have been taken.
Assume Alice and Bob play optimally.
Return "Alice" if Alice will win, "Bob" if Bob will win, or "Tie" if they will end the game with the same score.
stoneValue = [1,2,3,7]"Bob"stoneValue = [1,2,3,-9]"Alice"Constraints
- 1 <= stoneValue.length <= 5 * 10^4
- -1000 <= stoneValue[i] <= 1000