题解 | #查找兄弟单词#
查找兄弟单词
http://www.nowcoder.com/practice/03ba8aeeef73400ca7a37a5f3370fe68
import java.util.*;
public class Main{
public static void main(String[] arg){
Scanner sc=new Scanner(System.in);
while(sc.hasNextLine()){
String[] strs =sc.nextLine().split(" ");
Integer N = Integer.parseInt(strs[0]);
String voi = strs[N+1];
Integer k = Integer.parseInt(strs[N+2]);
List<String> list = new ArrayList<>();
for(int i=0; i<N; i++){
//找出兄弟单词并放入list中
boolean flag=false;
String str = strs[i+1];
//排完序后一样就是兄弟单词
char[] c1 = str.toCharArray();
char[] c2 = voi.toCharArray();
if(c1.length!=c2.length){
continue;
}
Arrays.sort(c1);
Arrays.sort(c2);
for(int j = 0; j< c1.length;j++){
if(c1[j]!=c2[j]){
flag=true;
}
}
if(!flag&&voi.length()==str.length()&&(!(voi.equals(str)))){
list.add(str);
}
}
//对list排序以找到第k个
Collections.sort(list,(a,b)->a.compareTo(b));
System.out.println(list.size());
for(int i=0;i<list.size();i++){
// System.out.print(list.get(k-1)+" ");
}
if(list.size()>=k){
System.out.println(list.get(k-1));
}
}
}
}

