// 思路:
// 对于n行的, s中的第i个字符:
// 对余数进行判断
// i%(2n-2) == 0 ----> row0
// i%(2n-2) == 1 & 2n-2-1 ----> row1
// i%(2n-2) == 2 & 2n-2-2 ----> row2
// ...
// i%(2n-2) == n-1 ----> row(n-1)
// ==>
// 对 k = i%(2n-2)进行判断
// k<=n-1时候,s[i]就属于第k行
// k>n-1时候,s[i]就属于2n-2-k行
// 最后将rows拼接起来就行了
s = "A", numRows = 1
// 输出:"PAHNAPLSIIGYIR"
var convert = function (s, numRows) {
const arr = []
for (let i = 0; i < s.length; i++) {
let key = (i % (2 * numRows - 2)).toString() === 'NaN' ? 0 : i % (2 * numRows - 2)
debugger
if (key <= numRows - 1) {
if(arr[key]=== undefined) {
arr[key] = ''
}
arr[key] = arr[key] + s[i]
} else {
if(arr[key]=== undefined) {
arr[key] = ''
}
arr[2 * numRows - 2 - key] = arr[2 * numRows - 2 - key] + s[i]
}
}
return arr.join('')
};
const res = convert(s, numRows)
console.log(res)
console