sort()好偷懒,哈哈。 先把所有兄弟单词都push入vec,再sort就可以输出了。

use std::io::{self,*};

fn main(){
    let stdin = io::stdin();
    for line in stdin.lock().lines(){
        let ll = line.unwrap();
        let s : Vec<&str> = ll.split(" ").collect();
        let len = s.len();
        let n = s[0].trim().parse::<usize>().unwrap_or(0);
        let k = s[len-1].trim().parse::<usize>().unwrap_or(0);
        let x = Vec::from(s[len-2]);
        let mut target = Vec::new();
        let mut i = 1usize;
        while i <= n {
            let mut trans1 = Vec::from(s[i]);
            if trans1 != x {
                let mut trans2 = x.clone();
                trans1.sort();
                trans2.sort();
                if trans1 == trans2 {
                    target.push(s[i]);
                }
            }
            i += 1;
        }
        target.sort();
        println!("{}",target.len());
        if target.len() >= k {
            println!("{}",target[k-1]);
        }
    }
}