Notice
Recent Posts
Recent Comments
Link
just inside
[백준] Silver 4. 1764 - 듣보잡 python 본문
728x90
문제 링크
https://www.acmicpc.net/problem/1764
문제 설명
김진영이 듣도 못한 사람의 명단과, 보도 못한 사람의 명단이 주어질 때, 듣도 보도 못한 사람의 명단을 구하는 프로그램을 작성하시오.
입력
첫째 줄에 듣도 못한 사람의 수 N, 보도 못한 사람의 수 M이 주어진다. 이어서 둘째 줄부터 N개의 줄에 걸쳐 듣도 못한 사람의 이름과, N+2째 줄부터 보도 못한 사람의 이름이 순서대로 주어진다. 이름은 띄어쓰기 없이 알파벳 소문자로만 이루어지며, 그 길이는 20 이하이다. N, M은 500,000 이하의 자연수이다.
듣도 못한 사람의 명단에는 중복되는 이름이 없으며, 보도 못한 사람의 명단도 마찬가지이다.
출력
듣보잡의 수와 그 명단을 사전순으로 출력한다.
제출 코드
import sys
input = sys.stdin.readline
n, m = map(int, input().split())
un_heard = set([input().rstrip() for _ in range(n)])
un_seen = set([input().rstrip() for _ in range(m)])
result = un_heard & un_seen
print(len(result))
print(*sorted(list(result)), sep='\n')
풀이
- 듣도 못한 사람, 보도 못한 사람을 입력받아 집합 자료형으로 저장한다.
- 교집합 연산을 통해 듣도 보도 못한 사람의 명단을 구한다.
- 리스트로 변환 후, 정렬하여 출력한다.
알아둘 사항
728x90
'coding test > 정렬' 카테고리의 다른 글
[백준] Silver 3. 2108 - 통계학 python (0) | 2024.07.28 |
---|---|
[백준] Bronze 1. 10989 - 수 정렬하기 3 python (0) | 2024.07.16 |
[백준] Silver 5. 11651 - 좌표 정렬하기 2 python (1) | 2024.07.15 |
[백준] Silver 5. 11650 - 좌표 정렬하기 python (0) | 2024.07.15 |
[백준] Silver 5. 10814 - 나이순 정렬 python (0) | 2024.07.15 |