beats 72%
public class Solution {
public String convert(String s, int numRows) {
if(s.equals(""))
return "";
if(numRows==1 || numRows==s.length())
return s;
int dis=(numRows-1)*2;
int dis1=dis;
int dis2=0;
int index;
boolean flag=true;
StringBuffer bf=new StringBuffer();
for(int i=0;i<numRows;i++){
dis2=2*i;
dis1=dis-dis2;
index=i;
flag=true;
while(index<s.length()){
if(flag){
if(dis1!=0)
bf.append(s.charAt(index));
index+=dis1;
flag=false;
}
else {
if(dis2!=0)
bf.append(s.charAt(index));
index+=dis2;
flag=true;
}
}
}
return bf.toString();
}
}