class Solution {
public:
string convert(string s, int numRows) {
if(numRows <= 1 || s.size() <= 1) return s;
string ret;
int len = s.size();
int maxgap = numRows * 2 - 2;
int step;
for(int i = 0; i < numRows; i++){
step = (numRows - i - 1) * 2;
for(int cur = i, j = 0; cur < len; j++, cur = maxgap * j + i){
ret.append(1, s[cur]);
if (i == 0 || i == numRows - 1) continue;
if (cur + step < len) ret.append(1, s[cur + step]);
}
}
return ret;
}
};
class Solution {
public:
string convert(string s, int numRows) {
if(numRows <= 1 || s.size() <= 1) return s;
string ret;
int len = s.size();
int maxgap = numRows * 2 - 2;
int step;
for(int i = 0; i < numRows; i++){
step = (numRows - i - 1) * 2;
int cur = i;
while(cur < len){
ret.append(1, s[cur]);
cur += step == 0 ? maxgap : step;
step = maxgap - step;
}
}
return ret;
}
};
1748

被折叠的 条评论
为什么被折叠?



