解題思路
劃一劃就出來(lái)了拥峦,枚舉下3和5的索引樹(shù)就可以看出規(guī)律來(lái)隙轻。
第一行和最后一行為一類以初始位置遞增(單一遞增數(shù)列)刘离,其他行為一類(以初始兩個(gè)位置分別遞增粘优,兩個(gè)遞增序列疊加)
/**
* @param {string} s
* @param {number} numRows
* @return {string}
*
* 1 9 17 8
* 2 8 10 16 18 2 8
* 3 7 11 15 19 3 7
* 4 6 12 14 20 4 6
* 5 13 21 5
*
* 1 5 9 13 1 4
* 2 4 6 8 10 12 14 2 4 4
* 3 7 11 15 3 4
*
*/
var convert = function(s, numRows) {
var re = "";
for (var i = 0; i < s.length ; i += 2*numRows -2) {
re += s[i]
}
for(i = 1; i < numRows - 1; i++) {
var k1 = i;
var k2 = 2*numRows - i;
while (k1 < s.length || k2 < s.length) {
if (k1 < s.length) {
re += s[k1];
k1 += 2*numRows - 2;
}
if (k2 < s.length) {
re += s[k2];
k2 += 2*numRows - 2;
}
}
}
for (i = numRows; i < s.length; i += 2*numRows -2) {
re += s[i];
}
return re;
};