코딩테스트/백준

[Python] 백준 17219. 비밀번호 찾기

jungmin.park 2023. 10. 20. 17:34

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

 

17219번: 비밀번호 찾기

첫째 줄에 저장된 사이트 주소의 수 N(1 ≤ N ≤ 100,000)과 비밀번호를 찾으려는 사이트 주소의 수 M(1 ≤ M ≤ 100,000)이 주어진다. 두번째 줄부터 N개의 줄에 걸쳐 각 줄에 사이트 주소와 비밀번

www.acmicpc.net

문제가 직관적이라고 생각한다.

웹사이트에 맞는 비밀번호를 찾는 것이다.

dict을 이용하면 쉽게 풀릴 문제라고 생각해서 dict으로 한 번 풀어본다.

 

* 딕셔너리를 만들때 컬렉션에 나와있는 defaultdict 함수를 사용해보겠다.

pwbook = collections.defaultdict(str)

 

* 웹사이트와 비밀번호를 입력을 받을때 딕셔너리에 없다면 값을 추가해주도록 한다.

for case in range(n):
    web, pw = map(str, input().split())
    if pwbook[web]:
        continue
    else:
        pwbook[web] = pw

 

 

찾아야 될 웹사이트 주소를 입력받아서 pwbook dict에 있다면 비밀번호를 출력해준다.

for case in range(m):
    web = input()

    if pwbook[web]:
        print(pwbook[web])