백준 1764번 바로가기

나의 풀이

import sys

n, m = map(int, sys.stdin.readline().split())
set1 = set()
set2 = set()

for i in range(n):
  name = sys.stdin.readline().rstrip()
  set1.add(name)

for _ in range(m):
  name = sys.stdin.readline().rstrip()
  set2.add(name)

db_list = (set1 & set2)
print(len(db_list))
for i in sorted(db_list):
  print(i)

CODE REVIEW

  1. set()을 이용하여 풀어내는 문제. set1과 set2의 교집합은 set1 & set2로 합집합은 set1 | set2로 구하는 것을 기억해두자.
  2. 알파벳 순으로 정렬해서 출력해야하는데 set에는 sort() 메소드를 바로 적용할 수 없다.
    • sorted()로 감싸주거나, list로 감싼 뒤에 sort() 메소드를 사용하자.