一、题目
二、代码
import java. util. ArrayList;
import java. util. Arrays;
import java. util. Collections;
import java. util. Scanner;
public class Main {
public static void main ( String[ ] args) {
Scanner in = new Scanner ( System. in ) ;
int num = in . nextInt ( ) ;
String[ ] dict = new String [ num] ;
for ( int i = 0 ; i < dict. length; i++ ) {
dict[ i] = in . next ( ) ;
}
String target = in . next ( ) ;
int index = in . nextInt ( ) - 1 ;
handlerBrotherWord ( dict, target, index) ;
}
private static void handlerBrotherWord ( String[ ] dict, String target, int index) {
ArrayList< String> brotherWords = new ArrayList< > ( ) ;
for ( int i = 0 ; i < dict. length; i++ ) {
if ( isBrotherWord ( dict[ i] , target) ) {
brotherWords. add ( dict[ i] ) ;
}
}
System. out . println ( brotherWords. size ( ) ) ;
Collections. sort ( brotherWords) ;
if ( brotherWords. size ( ) - 1 >= index) {
System. out . print ( brotherWords. get ( index) ) ;
}
}
private static boolean isBrotherWord ( String s, String target) {
if ( s. length ( ) != target. length ( ) || s. equals ( target) ) {
return false ;
}
char [ ] chars = s. toCharArray ( ) ;
Arrays. sort ( chars) ;
String s1 = new String ( chars) ;
char [ ] targetChars = target. toCharArray ( ) ;
Arrays. sort ( targetChars) ;
String s2 = new String ( targetChars) ;
if ( ! s1. equals ( s2) ) {
return false ;
}
return true ;
}
}