Problem 1698. Connect Four: find winning move
Inspired by this problem...
Connect Four is a fun two-player game in which the goal is to be the first player to connect four pieces in a row - horizontally, vertically, or diagonally. Players take turns dropping one of their pieces into any of the available columns.
Problem Statement
Given an array (size is arbitrary) in which
- 0 : space is empty
- 1 : player 1 piece
- 2 : player 2 piece
return the column that player 1 should play in to win the game. If there is more than one winning move, return a row vector of appropriate columns. If there are currently no winning moves, return [].
Assumptions
- Pieces fall to the bottommost available row in each column, as in the real game
- The input grid will always represent a valid game state
Example
If
b = [0 0 0 0 0 0 0; 0 0 0 0 0 0 0; 0 0 0 2 0 0 0; 0 0 0 1 0 0 0; 0 0 0 2 2 0 0; 0 0 2 1 1 1 0];
then
y = 7
Solution Stats
Problem Comments
Solution Comments
Show commentsProblem Recent Solvers28
Suggested Problems
-
2281 Solvers
-
371 Solvers
-
Determine the number of odd integers in a vector
742 Solvers
-
663 Solvers
-
Numbers spiral diagonals (Part 1)
206 Solvers
More from this Author44
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!