“战疫杯”大学生程序设计 语音设备是否正常 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);
}
}
}
