class Solution {
public:
string convert(string s, int numRows) {
int len=s.size();
int tmp=2*numRows-2;
int i,j,k,now;
string result;
result.clear();
vector<bool> isfind(len+1,false);
if(numRows==1||len==1) return s;
for(i=0;i<tmp;i++)
{
now=i;
if(now<len)
{
if(!isfind[now]){
result=result+s[now];
isfind[now]=true;
}
}
for(j=i+1;j<len;j++)
{
if((j+now)%tmp==0&&!isfind[j])
{
result=result+s[j];
now=j;
isfind[j]=true;
}
}
}
return result;
}
};
我菜菜只打败百分之五的人,继续加油
问题:要注意先判断数组是否越界,而不能先访问数组元素。