Cody

Problem 42705. Is It a Snake?

Given an m-by-n matrix, return true if the elements of the matrix are a connected "snake" shape from 1 to m*n. Otherwise return false.

Snakes are vectors that move through the grid of a matrix in a 4-connected sense. So the number 1 can be anywhere, but the number 2 must be north, south, east, or west of 1. And the number 3 must be north, south, east, or west of 2. And so on.

Examples

 [ 1 2 3 4 5 ]    is a snake
 [ 2 1 3 4 ]      is NOT a snake
 [ 1 2 3 2 1 ]    is NOT a snake
 [ 6 5 4 3 ]      is NOT a snake
 [ 6 1 2 
   5 4 3 ]        is a snake
 [ 1 2
   3 4 ]          is NOT a snake
 [  7  8  9 10
    6  1  2 11
    5  4  3 12
   16 15 14 13 ]  is a snake

NOTE: Answers to this problem helped me write the test suite for Cody Problem 42708, Placing Beads Neatly in a Box. Thanks!

Solution Stats

38.02% Correct | 61.98% Incorrect
Last solution submitted on Jun 04, 2019

Problem Comments

Solution Comments