6.ZigZag Conversion
这样一个简单的题目上,我竟然犯了四个错。。。
class Solution(object):
def convert(self, s, numRows):
"""
:type s: str
:type numRows: int
:rtype: str
"""
# if numRows == 1
if numRows == 1: return s
res = ''
n = len(s)
for i in range(numRows):
if i == 0 or i == numRows - 1:
res += s[i:: 2 * numRows - 2]
else:
d1 = 2 * numRows - 2 - 2 * i
idx = i
# while idx < numRows:
while idx < n:
res += s[idx]
# idx = 2 * numRows - d1
# idx = 2 * numRows - 2 - d1
# idx += 2 * numRows - 2 - d1
idx += d1
d1 = 2 * numRows - 2 - d1
return res