This Challenge is derived from GJam 2014 China Cross the Maze.
The Goal is to minimally traverse a Maze from a Starting Point to Finish Point in less than 10,000 moves where the Bot can only go forward and must maintain its Left Arm in contact with a wall. At the Start Point the Bot can only touch NSEW. After the first move the Bot maintains contact on diagonals. Rotations in a cul-de-sac or turning are not counted as moves.
Input: [M, Start_Finish] where M is an NxN (0,1=Wall) array and Start_Finish is [Sr,Sc,Fr,Fc]
Output: Path, a string of Movements {N,S,E,W}. If Path is >10,000 moves or No solution return a null string.
Examples:
.##.# ..... ...#. .###. ...#. 1 1 5 3
Note: (1,1) is Top Left and start point for this case.
The # are replaced by 1s and '.' will be 0s.
Output: SEEENSESSSNNNWWSWWSSEE
Contest Performance: Best Delta Time of 17 minutes with only 134 correct solutions in 3 hours.
Solution Stats
Problem Comments
Solution Comments
Show commentsProblem Recent Solvers6
Suggested Problems
-
Get the area codes from a list of phone numbers
1072 Solvers
-
How to find the position of an element in a vector without using the find function
2812 Solvers
-
Find the elements of a matrix according to a defined property.
91 Solvers
-
Multiples of a Number in a Given Range
939 Solvers
-
Square Digits Number Chain Terminal Value (Inspired by Project Euler Problem 92)
253 Solvers
More from this Author308
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!