快捷搜索: 王者荣耀 脱发

“战疫杯”大学生程序设计 语音设备是否正常 map

分析

注意题目最后一句话要求,按照字典序去输出姓名,刚开始没看见这个条件,读题要细心。用HashMap去存进入的角色(也可以不用,用数组标记也可以,用set也可以),然后遍历这八个角色,看哪一个没包含,可以加进TreeSet集合中,因为他可以自动给你排序,最后输出即可。

import java.util.HashMap;
import java.util.Scanner;
import java.util.TreeSet;

public class Main {
          
   

    public static void main(String args[]) {
          
   
        Scanner sc = new Scanner(System.in);
        String[] name = {
          
   "Captain", "Priest", "Cook", "Doctor", "Engineer", "Hunter", "Gunner", "Navigator"};
        HashMap<String, Integer> map = new HashMap<>();
        map.put(sc.next(), 1);
        int n = sc.nextInt();
        for (int i = 0; i < n; i++) {
          
   
            String s = sc.nextLine();
            String ss = s.split(":")[0];
            map.put(ss, 1);
        }
        TreeSet<String> t = new TreeSet<>();
        for (int i = 0; i < 8; i++) {
          
   
            if (!map.containsKey(name[i]))
                t.add(name[i]);
        }
        if (t.size() == 0)
            System.out.println("Ready");
        else {
          
   
            for (Object o : t)
                System.out.println(o);
        }
    }
}
经验分享 程序员 微信小程序 职场和发展