Search⌘ K
AI Features

Solution: Flip Game

Explore the Flip Game solution by understanding how to find all valid next states through backtracking. This lesson teaches you to scan and transform a string representing the game state by flipping consecutive '++' into '--', generating all possible outcomes after one move. You will learn to implement an efficient approach to enumerate and construct new strings without modifying the original, while analyzing time and space complexity.

Statement

You are playing a Flip Game with a friend.

You are given a string currentState consisting only of the characters '+' and '-'. Players take turns flipping two consecutive "++" into "--". The game ends when a player cannot make a move, at which point the other player wins.

Return all possible states of currentState after performing exactly one valid move. The answer may be returned in any order. If no valid move exists, return an empty list.

Constraints:

  • 11 \leq currentState.length 500\leq 500

  • currentState[i] is either '+' or '-'

Solution

The main idea is to generate all possible valid next moves by ...