挑战
按字符数计算的最短代码,它采用单个输入整数N(N >= 3) 并返回一个索引数组,在迭代时将根据 JPEG“之字形”扫描模式遍历Nx矩阵。N以下是遍历 8x8 矩阵src的示例:

例子
(中间矩阵不是输入或输出的一部分,只是输入表示的 NxN 矩阵的表示。)
                1 2 3
(Input) 3  -->  4 5 6  -->  1 2 4 7 5 3 6 8 9 (Output)
                7 8 9
                1  2  3  4
(Input) 4  -->  5  6  7  8  -->  1 2 5 9 6 3 4 7 10 13 14 11 8 12 15 16 (Output)
                9 10 11 12
               13 14 15 16
笔记
- 结果数组的基数应该适合您的语言(例如,Matlab 数组是从 1 开始的,C++ 数组是从 0 开始的)。
- 这与这个问题有关。
奖金
扩展您的答案以获取两个输入N和(N, M >=3) 并在x矩阵M上执行相同的扫描。(在这种情况下是列数和行数。)NMNM
奖金示例
                  1  2  3  4
(Input) 4 3  -->  5  6  7  8  -->  1 2 5 9 6 3 4 7 10 11 8 12 (Output)
                  9 10 11 12
                   1  2  3
(Input) 3 4  -->   4  5  6  -->  1 2 4 7 5 3 6 8 10 11 9 12 (Output)
                   7  8  9
                  10 11 12