https://www.acmicpc.net/problem/14425
14425호: 현 세트
문자열의 수 N과 M(1 ≤ N ≤ 10,000, 1 ≤ M ≤ 10,000)은 첫 번째 줄에 지정됩니다. 세트 S에 포함된 문자열은 다음 N 행에 지정됩니다. 확인할 문자열은 다음 M 행에 지정됩니다.
www.acmicpc.net
- 총 N개의 문자열로 구성된 집합 S가 주어집니다.
- 입력으로 주어진 m-문자열 중에서 집합 S에 포함된 항목 수지식을 찾다
- 기입
- 문자열의 수 N과 M(1 ≤ N ≤ 10,000, 1 ≤ M ≤ 10,000)은 첫 번째 줄에 지정됩니다.
- 다음 N 행에는 집합 S에 포함된 문자열이 포함됩니다.주어진다
- 다음 M 행에는 확인해야 하는 문자열이 포함되어 있습니다.주어진
- 입력으로 지정된 문자열은 알파벳 소문자로만 구성되며 500자 이하입니다.
- 집합 S에서 동일한 문자열이 두 번 이상 지정된 경우는 없습니다.
- 누르다
- 첫 번째 줄에는 집합 S에 포함된 M 문자열의 수를 적습니다.
- 제한 시간: 2초
- 메모리 제한: 1536MB
"""
입출력 예시)
5 11
baekjoononlinejudge
startlink
codeplus
sundaycoding
codingsh
baekjoon
codeplus
codeminus
startlink
starlink
sundaycoding
codingsh
codinghs
sondaycoding
startrink
icerink
-> 4
"""
## 의사코드 ##
# s = set() # 집합 S
# n개의 줄에 집합 S에 포함되는 문자열
# for _ in range(n):
# s.add(input()) # add() -> set()에 하나의 원소 추가
# m개의 줄에 검사해야 하는 문자열
# cnt = 0
# for _ in range(m):
# word = input() # 검사할 문자열
# # 문자열이 집합 S에 있는 경우, cnt + 1
# if word in s:
# cnt += 1
통과된 코드
n, m = map(int,input().split())
# 집합 S
s = set()
for _ in range(n):
s.add(input())
# 집합 S에 포함되어 있는 문자열의 개수
cnt = 0
for _ in range(m):
word = input() # 검사할 문자열
# 문자열이 집합 S에 있는 경우, cnt + 1
if word in s:
cnt += 1
print(cnt)
- 문장()
set.add(): 항목 1개 추가set.update(()): 여러 항목 추가
참조)
02-6 데이터 유형 설정
`(추천 동영상 강의)` : (https://www.youtube.com/watch?v=nsAtYHnovUA)(https://www.youtube.com/watch?v=nsAtY…
wikidocs.net
