알고리즘/백준
1764_듣보잡
베리영young
2025. 1. 20. 17:14
사용 알고리즘: set
사용 언어: java
package week33;
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));
StringTokenizer st = new StringTokenizer(br.readLine());
int n = Integer.parseInt(st.nextToken());
int m = Integer.parseInt(st.nextToken());
// List<String> 듣도 = new ArrayList<>();
Set<String> 듣도 = new HashSet<>();
for (int i = 0; i < n; i++) {
듣도.add(br.readLine());
}
Queue<String> answer = new PriorityQueue<>((a,b) -> a.compareTo(b));
for (int i = 0; i < m; i++) {
String name = br.readLine();
if(듣도.contains(name)) {
answer.add(name);
}
}
StringBuilder sb = new StringBuilder();
sb.append(answer.size() + "\n");
// System.out.println(answer.size());
while(!answer.isEmpty())
sb.append(answer.poll() + "\n");
System.out.println(sb);
}
}
어렵진 않은데 은근히 애먹은 문제...
List가 그렇게 시간이 오래 걸린다고..?
Set이나 Map을 사용하는 것보다 많이 오래 걸리는 거 같다...