image.png

    1. #include <iostream>
    2. #include <vector>
    3. #include <string>
    4. #include <algorithm>
    5. using namespace std;
    6. int main(){
    7. int num = 0;
    8. while(cin>>num){
    9. //***********************************
    10. //除了第一个数字,其它申明的变量全都放到里面,避免记忆性
    11. //***********************************
    12. string aim_str = "";
    13. string sort_str = "";
    14. int aim_num = 0;
    15. int result_num = 0;
    16. string temp = "";
    17. vector<string> str_vec;
    18. vector<string> sort_vec;
    19. vector<string> result_vec;
    20. for(int i = 0;i<num;i++){
    21. cin>>temp;
    22. str_vec.push_back(temp);
    23. }
    24. sort_vec = str_vec;
    25. cin>>aim_str;
    26. sort_str = aim_str;
    27. sort(sort_str.begin(),sort_str.end());
    28. cin>>aim_num;
    29. for(int i = 0;i<num;i++){
    30. sort(sort_vec[i].begin(),sort_vec[i].end());
    31. }
    32. for(int i = 0;i<num;i++){
    33. if(sort_vec[i]==sort_str && str_vec[i]!=aim_str){
    34. result_vec.push_back(str_vec[i]);
    35. result_num++;
    36. }
    37. }
    38. //***********************************
    39. //要求的是个字典,需要对兄弟单词重排
    40. //***********************************
    41. sort(result_vec.begin(),result_vec.end());
    42. //***********************************
    43. //注意处理特殊情况
    44. //***********************************
    45. if(result_num!=0 && aim_num <= result_vec.size()){
    46. cout<<result_num<<endl;
    47. cout<<result_vec[aim_num-1]<<endl;
    48. }
    49. else{
    50. cout<<result_num<<endl;
    51. }
    52. }
    53. }