题目:
题解:
func convert(s string, numRows int) string {n, r := len(s), numRowsif r == 1 || r >= n {return s}t := r*2 - 2ans := make([]byte, 0, n)for i := 0; i < r; i++ { // 枚举矩阵的行for j := 0; j+i < n; j += t { // 枚举每个周期的起始下标ans = append(ans, s[j+i]) // 当前周期的第一个字符if 0 < i && i < r-1 && j+t-i < n {ans = append(ans, s[j+t-i]) // 当前周期的第二个字符}}}return string(ans)
}