문제 정리
→ 첫 줄에 n과 m이 주어진다.
→ 다음줄에 n개의 사이트와 비밀번호가 저장된 문자가 입력된다.
→ 그 다음줄에 m개의 비밀번호를 찾고자하는 사이트가 문자로 입력된다.
→ 예시
접근 방법
→ n개의 사이트들을 ‘ ‘ 띄어쓰기로 분리해 키와 값으로 저장한다.
→ m개의 사이트들에 반복문을 돌며 해당 인덱스를 참조하여 비밀번호를 출력한다.
코드 진행
→ 딱히 어려운 부분이 없어 추가 설명은 넣지 않았다.
# n = 저장된 사이트 주소의 수
# m = 찾으려는 사이트 주소의 수
n, m = map(int, input().split())
# 사이트와 비밀번호를 입력받아 리스트화 시킨다.
site_pw_li = []
for _ in range(n) :
site_pw = input()
site_pw_li.append(site_pw)
# 찾고자하는 사이트를 입력받아 리스트화 시킨다.
find_site_li = []
for _ in range(m) :
find_site = input()
find_site_li.append(find_site)
# 사이트와 비밀번호를 딕셔너리에 추가한다.
site_pw_dict = {}
for i in site_pw_li :
site = i.split(" ")[0]
pw = i.split(" ")[1]
site_pw_dict[site] = pw
# for문을 돌며 딕셔너리를 참조해 비밀번호를 출력한다.
for i in find_site_li :
print(site_pw_dict[i])
결과
→ 시간과 메모리 사용은 그렇게 좋은 편은 아닌거 같다.