728x90
반응형
https://www.acmicpc.net/problem/14425
14425번: 문자열 집합
첫째 줄에 문자열의 개수 N과 M (1 ≤ N ≤ 10,000, 1 ≤ M ≤ 10,000)이 주어진다. 다음 N개의 줄에는 집합 S에 포함되어 있는 문자열들이 주어진다. 다음 M개의 줄에는 검사해야 하는 문자열들이 주어
www.acmicpc.net
코드
package baekjoon;
import java.util.HashMap;
import java.util.Scanner;
public class 문자열집합_14425 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int answer = 0;
int N = sc.nextInt();
int M = sc.nextInt();
HashMap<String, Integer> map = new HashMap<String, Integer>();
for (int i = 0; i < N; i++) {
map.put(sc.next(), 1);
}
for (int i = 0; i < M; i++) {
String str = sc.next();
if (map.get(str) != null) {
answer++;
}
}
System.out.println(answer);
} // main
} // class
N에 해당하는 문자열 집합을 map에 key 값으로 넣고
M의 크기만큼 for 문을 돌면서 해당 값이 있으면 answer를 증가시키고
해당 값이 키에 없다면 다시 for문을 돌면서 확인한다.
728x90
반응형
'Algorithm' 카테고리의 다른 글
[프로그래머스] 단어 변환 / DFS/BFS(그래프탐색) (0) | 2022.08.15 |
---|---|
[프로그래머스] 완주하지 못한 선수 / Hash (0) | 2022.08.12 |
[프로그래머스] 위장 / Hash (0) | 2022.08.10 |
[프로그래머스] 최대공약수와 최소공배수 구하기 / 유클리드 호제법 (0) | 2022.08.09 |
[백준] 2178번 미로탐색 / 그래프 탐색(BFS/DFS) (0) | 2022.08.06 |