반응형
백준 HashSet관련 문제인데 전 사전순 역순 출력때문에 TreeSet으로 풀어보았습니다.
1.Stringbuilder 사용
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int T = Integer.parseInt(br.readLine());
StringBuilder sb = new StringBuilder();
TreeSet<String> treeSet = new TreeSet<>(Collections.reverseOrder());
while (T-- > 0) {
StringTokenizer st = new StringTokenizer(br.readLine());
String name = st.nextToken();
String s = st.nextToken();
if(s.equals("enter")) {
treeSet.add(name);
} else {
treeSet.remove(name);
}
}
for (String val : treeSet) {
sb.append(val).append('\n');
}
System.out.println(sb);
}
}
2. 일반 출력
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int T = Integer.parseInt(br.readLine());
TreeSet<String> treeSet = new TreeSet<>(Collections.reverseOrder());
while (T-- > 0) {
StringTokenizer st = new StringTokenizer(br.readLine());
String name = st.nextToken();
String s = st.nextToken();
if(s.equals("enter")) {
treeSet.add(name);
} else {
treeSet.remove(name);
}
}
for (String val : treeSet) {
System.out.println(val);
}
}
}
결과
- StringBuilder 사용이 더 빠른 것을 보실 수 있습니다.
반응형
'백준 > Hash & Tree' 카테고리의 다른 글
백준 25757 자바 (0) | 2022.11.13 |
---|---|
백준 22233 자바 (0) | 2022.09.01 |
백준 18294 자바 (0) | 2022.08.24 |
백준 20291 자바 (0) | 2022.08.24 |
백준 10867 자바 (0) | 2022.08.23 |