Leetcode zigzag conversion
class Solution {
public:
string convert(string s, int nRows)
{
string ret;
int n=s.size();
vector<string>v(nRows);
for(int i=0;i<n;)
{
for(int j=0;j<nRows&&i<n;j++,i++)
v[j]+=s[i];
for(int j=nRows-2;j>0&&i<n;j--,i++)
v[j]+=s[i];
}
for(int i=0;i<nRows;i++)
{
for(int j=0;j<v[i].size();j++)
ret+=v[i][j];
}
return ret;
}
};
犯的错误
class Solution {
public:
string convert(string s, int nRows)
{
string ret;
int n=s.size();
vector<string>v(nRows);
for(int i=0;i<n;)
{
for(int j=0;j<nRows;j++,i++)
v[j]+=s[i];
for(int j=nRows-2;j>0;j--,i++)
v[j]+=s[i];
}
for(int i=0;i<nRows;i++)
{
for(int j=0;j<v[i].size();j++)
ret+=v[i][j];
}
return ret;
}
};
少了约束条件
浙公网安备 33010602011771号