백준

[/백준] 14425번 : 문자열 집합

ydin 2023. 1. 6. 21:19

- 문제 : https://www.acmicpc.net/problem/14425

 

스스로 푼 문제이고, Silver Lv3이다.

처음에 문제가 뭔소리인가 했는데 n개의 문자열 집합과 m개의 문자열 집합이 있는데, m개의 원소들 중에서 n개의 집합에 있는 원소들의 총 갯수를 세서 반환하는 문제다. 처음에는 간단하게 버블 정렬로 풀었는데, 계속 시간초과가 발생해서 해결할 수 있는 방법이 없을까 고민하던 중에 딕셔너리를 이용해봤는데 통과했다. 역시 검색 최적에는 해시(딕셔너리)인건가!

 

- 정답 풀이 : 

import sys
from collections import Counter
input = sys.stdin.readline

n, m = map(int, input().split())

s, test = [], []
for _ in range(n):
    s.append(input())

for _ in range(m):
    test.append(input())
    
dic = Counter(test)
count = 0

for i in range(n):
    count +=  dic[s[i]]
        
print(count)