문제 4104 · 바이트 V
두 관측실의 공통 표식
| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 1000ms / 테스트 (언어별 보정은 아래 표) | 메모리: 측정하지 않음(브라우저 채점) | 0 | 0 | 0 | 0.00% |
문제
천문대에는 동쪽 관측실과 서쪽 관측실이 있다. 두 관측실은 같은 밤에 하늘을 살펴보지만, 구름이 가리는 위치와 장비를 움직이는 순서가 달라 서로 다른 관측 기록을 남긴다. 연구원은 두 관측실에서 모두 기록한 관측 대상의 표식을 모아 다음 날의 확인 목록을 만들려고 한다. 각 관측 대상에는 영문 소문자로만 이루어진 표식이 붙어 있다. 표식은 글자의 순서까지 완전히 같아야 같은 것으로 취급한다. 한 표식이 다른 표식의 일부로 들어 있더라도 두 문자열 전체가 다르면 서로 다른 대상이다. 표식의 길이는 관측 대상의 밝기나 중요도와 관계가 없으며, 표식에 담긴 글자를 별도로 해석할 필요는 없다. 각 관측실의 기록에는 관측할 때마다 표식 한 개가 추가된다. 따라서 같은 대상을 여러 번 관측하면 같은 표식이 여러 줄에 나타날 수 있다. 확인 목록에는 대상마다 한 번만 적어야 하므로, 한 관측실 안에서 같은 표식이 반복된 횟수는 고려하지 않는다. 예를 들어 동쪽 기록에 어떤 표식이 다섯 번 있고 서쪽 기록에 한 번 있다면, 그 표식은 확인 목록의 항목 한 개가 된다. 한쪽에만 있는 표식은 몇 번 나타났더라도 확인 목록에 넣지 않는다. 두 관측실의 기록은 관측한 순서대로 주어지지만, 확인 목록을 만드는 데 기록 순서는 영향을 주지 않는다. 두 기록의 같은 줄에 놓인 표식을 짝짓는 것도 아니다. 각 표식이 동쪽 기록 어딘가에 한 번 이상 있고 서쪽 기록 어딘가에도 한 번 이상 있는지만 확인한다. 완성된 확인 목록에 들어갈 서로 다른 표식의 개수를 구해야 한다. 공통으로 기록한 표식이 하나도 없으면 확인 목록의 크기는 0이다.
입력
첫째 줄에 정수 N과 M이 공백으로 주어진다. 1 ≤ N, M ≤ 10000이다. 다음 N개 줄에는 동쪽 관측실의 표식이 한 줄에 하나씩 주어진다. 그다음 M개 줄에는 서쪽 관측실의 표식이 한 줄에 하나씩 주어진다. 각 표식은 영문 소문자로만 이루어지며 길이는 1 이상 10 이하이다. 같은 표식이 한 관측실의 기록에 여러 번 나타날 수 있다.
출력
두 관측실에서 모두 기록한 서로 다른 표식의 개수를 정수 하나로 출력한다.
예제 입력 1
5 4 mira lumo mira sena orbit sena mira mira nova
예제 출력 1
2
예제 입력 2
3 3 aa aa a aaa b bb
예제 출력 2
0
예제 입력 3
1 2 z z z
예제 출력 3
1
힌트 펼치기
- 각 관측실의 기록에서 중복을 제거한 뒤, 두 집합에 공통으로 들어 있는 원소를 센다.
관련 서재 장
알고리즘 분류
해시집합문자열풀이 작성
연습 채점은 공개 테스트로 실행합니다. 인증 제출은 코드를 봉인한 뒤 새 입력을 실행하고 서버에서 출력을 대조하며 코드와 판정을 저장합니다.
풀이를 제출하면 여기에서 결과를 확인할 수 있습니다.
연습 기록은 이 브라우저에 최근 50개를 저장합니다. 인증 기록은 내 제출에서 확인하세요.
이 브라우저의 연습 기록
언어별 제한
테스트 케이스마다 새 전역에서 실행하며 준비 시간은 제외합니다. 시간 초과된 출력은 검사하지 않습니다. 브라우저·기기 성능에 따라 실행 시간이 달라집니다.
| 언어 | 엔진(버전) | 시간 제한 | 메모리 |
|---|---|---|---|
| javascript | 사용자 브라우저 JavaScript 엔진 (버전은 브라우저에 따라 다름) | 1000ms / 테스트 | 측정하지 않음(브라우저 채점) |
| python | Pyodide 314.0.7 (CPython 3.14 WASM) | 5000ms / 테스트 | 측정하지 않음(브라우저 채점) |