- 按照下标找规律
- 注意leetcode的运行输出,如果其中一组用例出现死循环,输出结果会在一个文件,即部分测试用例正确,部分错误且出现死循环,则需辨别输出结果属于哪一份测试用例
class Solution {
public:string convert(string s, int numRows) {int len = s.size();int d = 2 * numRows - 2;if(d == 0) return s;string ret;int sd = d;for(int i = 0; i < numRows; i++){int tmp = i; while(tmp < len && sd > 0){ret += s[tmp];if(sd != d && tmp + sd < len)ret += s[tmp + sd];tmp += d;} sd -= 2;}int j = numRows - 1;while(j < len){ret += s[j];j += d;}return ret;}
};