https://www.acmicpc.net/problem/7785
import java.io.*;
import java.util.*;
public class Main {
static int n;
public static void main(String[] args) throws Exception{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
n = Integer.parseInt(br.readLine());
HashSet<String> log = new HashSet<>();
for(int i=0;i<n;i++){
StringTokenizer st = new StringTokenizer(br.readLine());
String name = st.nextToken();
String msg = st.nextToken();
if(msg.equals("enter")){
log.add(name);
} else if(msg.equals("leave")){
log.remove(name);
}
}
for(String l : log){
System.out.println(l);
}
}
}
=> 정렬을 빼먹어서 추가
import java.io.*;
import java.util.*;
public class Main {
static int n;
public static void main(String[] args) throws Exception{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
n = Integer.parseInt(br.readLine());
HashSet<String> log = new HashSet<>();
for(int i=0;i<n;i++){
StringTokenizer st = new StringTokenizer(br.readLine());
String name = st.nextToken();
String msg = st.nextToken();
if(msg.equals("enter")){
log.add(name);
} else if(msg.equals("leave")){
log.remove(name);
}
}
String[] ans = new String [log.size()];
int idx = 0;
for(String l : log){
ans[idx++] = l;
}
Arrays.sort(ans, Collections.reverseOrder());
for(int i=0;i<ans.length;i++){
System.out.println(ans[i]);
}
}
}