Problem 47468. Slitherlink III: Evolve
This challenge is to solve Slitherlink pencil puzzles. An essential starter guide is Slitherlink Techniques. An s matrix with values from 0:5 is provided. An s of 5 means this locations edges are not provided and may be from 0:3. The player will be given the s, c, and initial p matrices. The c matrix is clarified for the creation of the solution path of nodes as given in c. The p matrix is a [numel,numel] matrix of c indices where p(x,y)=1 is a possible node connection. p(1,2)=1 as well as example's p(1,5)=1. Additional details of p are provided in the function template. Function template also includes visualization code.
This Slitherlink III: Evolve is for the cases where s is not solved using only the Gimmes from Slitherlink Starting Techniques but requires additional Evolving that is always valid for a valid input. Evolve examples are a Red bar into a corner must continue that Red bar out of the corner, an s=1 cell with a Red bar must have Black bars on its other 3 edges. Cases of Trivial and Gimmes should be solved prior to invoking Evolve. The Evolve subroutine is the most critical routine and must be very comprehensive. A general Evolve routine should check if the output State is valid. When Evolve is used within a recursive routine that asserts possibly incorrect content the Evolve may produce an invalid output for the invalid input.
Input: s, matrix of edge counts of the unique solution path; (c,p,bsegs,emap,pmap) are provided but not required
Output: sv, a vector of path nodes where sv(1)=sv(end). These nodes correspond to values in the c matrix example.
Example:
%[1 5 9 13 17 % c matrix [3 1 1 2; % s matrix [1 2 6 7 8 12 16 20 19 18 17 13 9 5 1] % sv
% 2 6 10 14 18 %path nodes 2 1 0 1; %qty edges % sv matrix is vector of nodes generating the
% 3 7 11 15 19 % corners 1 2 1 2] %adjacent % Red Line path
% 4 8 12 16 20] %to path
Related Challenges:
Slitherlink I: Trivial, Slitherlink II: Gimmes, Slitherlink IV: Recursive (medium), Slitherlink V: Assert/Evolve/Check (large)
Solution Stats
Solution Comments
Show commentsProblem Recent Solvers1
Suggested Problems
-
Matlab Basics - Convert a row vector to a column vector
629 Solvers
-
4963 Solvers
-
293 Solvers
-
464 Solvers
-
Determine if the square root is an integer.
17 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!