二维阵列斐波那契广场 - Java

2D Array Fibonacci Square - Java

编写一个方法,在矩阵中找到闭合的方形路径(循环)。闭合路径应该是顺时针的,它可以从矩阵的任意一点(任意元素)开始,包含构成斐波那契数列的元素。

int[][] arr = {
    {4, 5, 2, 1, 1, 2, 7},
    {2, 4, 5, 21, 0, 3, 6},
    {4, 5, 2, 13, 8, 5, 7},
    {4, 5, 2, 1, 1, 2, 7},
}

这例如应该 return 正确,因为

1  1 2
21 0 3
13 8 5

形成我要找的正方形

我只是不太了解这个问题的算法。

你需要使用某种Depth First Search (or wall follower algorism,这也是一个 DFS) 来找到所有 NxN 顺时针路径,从矩阵中的任何元素开始。
N应大于2且不大于矩阵的较小维度。
对于找到的每条路径,您需要检查它是否包含斐波那契数列。