题解 | 蛇形矩阵
蛇形矩阵
https://www.nowcoder.com/practice/649b210ef44446e3b1cd1be6fa4cab5e
const rl = require("readline").createInterface({ input: process.stdin }); var iter = rl[Symbol.asyncIterator](); const readline = async () => (await iter.next()).value; void (async function () { // Write your code here while ((line = await readline())) { let tokens = line.split(" "); let n = parseInt(tokens[0]); let martix = Array.from({ length: n }, () => Array(n)); let count = 1; for (let i = 0; i < n; i++) { let row = i, col = 0; while (row >= 0) { martix[row][col] = count; count++; row--; col++; } } martix.forEach((item) => { console.log(item.join(" ")); }); } })();
先建一个二维矩阵,然后按行的坐标是递减的,列的坐标是递增的去填入数字,就相当于沿着对角线去填入了,最后输出这个举证,就是结果