import java.util.Arrays;
/**
* Given an integer n,
* generate a square matrix filled with elements from 1 to n2 in spiral order.
*
* For example,
* Given n = 3,
*
* You should return the following matrix:
* [
* [ 1, 2, 3 ],
* [ 8, 9, 4 ],
* [ 7, 6, 5 ]
* ]
*/
public class SpiralMatrix {
public static void main(String[] args) {
int N = 4;
int[][] spiralMatrix = spiralMatrix(N);
for (int i = 0; i < spiralMatrix.length; ++i)
System.out.println(Arrays.toString(spiralMatrix[i]));
}
public static int[][] spiralMatrix(int n) {
int[][] matrix = new int[n][n];
int m = n - 1;
int k = 0;
for (int layer = 0; layer