这是Javascript中的代码。它计算从中间(0,0)的数字1开始的2D矩阵的位置
13 12 11 10 2514 3 2 9 2415 4 1 8 2316 5 6 7 2217 18 19 20 21function position(n) { const k = Math.ceil((Math.sqrt(n) - 1) / 2); let t = 2 * k + 1; let m = Math.pow(t, 2); t -= 1; if (n >= m - t) { return [k - (m - n), -k]; } m -= t; if (n >= m - t) { return [-k, -k + (m - n)]; } m -= t; if (n >= m - t) { return [-k + (m - n), k]; } return [k, k - (m - n - t)];}


