[Python] 백준 실버3_문자열

https://www.acmicpc.net/problem/14425

  • 총 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(()) : 여러 항목 추가

참조)

https://wikidocs.net/1015

02-6 데이터 유형 설정

`(추천 동영상 강의)` : (https://www.youtube.com/watch?v=nsAtYHnovUA)(https://www.youtube.com/watch?v=nsAtY…

wikidocs.net