easy程度题
The string "PAYPALISHIRING"
is written in a zigzag pattern on a given number of rows like this: (you may want to display this pattern in a fixed font for better legibility)
P A H N A P L S I I G Y I RAnd then read line by line:
"PAHNAPLSIIGYIR"
Write the code that will take a string and make this conversion given a number of rows:
string convert(string text, int nRows);
convert("PAYPALISHIRING", 3)
should return "PAHNAPLSIIGYIR"
给一个字符串,把它按Z形排列,然后按行输出。
class Solution
{
public:
string convert(string s, int numRows)
{
string add[numRows];
int j,i=0,m;
while(i<s.size())
{
for(j=0;i<s.size()&&j<numRows;j++)
add[j]+=s[i++];
for(j=numRows-2;i<s.size()&&j>0;j--)
add[j]+=s[i++];
}
string result="";
for(int i=0;i<numRows;i++)
result+=add[i];
return result;
}
};