LeetCode-6 Z 字型变换
Table of Contents
LeetCode-6 Z 字型变换 #
Solution 1 #
对于 “Z” 字变换的 “|” 和 “/” 部分, 如果有 numRows
行, 则每个 “|” 和 “/” 有 2 * (numRows - 1)
个. 变换后, 先取这部分中的第 $0$ 个, 再取第 $1$ 和 $-1$ 个, 即根据模数取即可.
代码如下:
class Solution:
def convert(self, s: str, numRows: int) -> str:
if numRows == 1:
return s
ans = ''
for i in range(numRows):
k = 2 * (numRows - 1)
for j in range(len(s)):
if (j % k == i) or (j % k == (k - i) % k):
ans += s[j]
return ans