27 lines
629 B
C++
27 lines
629 B
C++
#include <string>
|
|
|
|
using namespace std;
|
|
class Solution {
|
|
public:
|
|
string convert(string s, int numRows) {
|
|
if (numRows == 1) return s;
|
|
string* zigzag{ new string[numRows]{ } };
|
|
int n{ };
|
|
bool down{ };
|
|
for (int i = 0; i < s.length(); i++)
|
|
{
|
|
zigzag[n] += s[i];
|
|
if (n == numRows - 1|| n == 0) {
|
|
down = !down;
|
|
}
|
|
n += down ? 1 : -1;
|
|
}
|
|
string result{ };
|
|
for (int i = 0; i < numRows; i++)
|
|
{
|
|
result += zigzag[i];
|
|
}
|
|
delete[] zigzag;
|
|
return result;
|
|
}
|
|
}; |