[파이썬 알고리즘 문제풀이] - Section5 / 자료구조 활용(해쉬) -8

Chooooo·2023년 2월 1일
0

🚗 단어 찾기

현수는 영어로 시는 쓰는 것을 좋아합니다.
현수는 시를 쓰기 전에 시에 쓰일 단어를 미리 노트에 적어둡니다.
이번에는 N개의 단어를 노트에 적었는데 시에 쓰지 않은 단어가 하나 있다고 합니다.
여러분이 찾아 주세요.

▣ 입력설명
첫 번째 줄에 자연수 N(3<=N<=100)이 주어진다.
두 번째 줄부터 노트에 미리 적어놓은 N개의 단어가 주어지고, 이어 바로 다음 줄부터 시에 쓰인 N-1개의 단어가 주어진다.

▣ 출력설명
첫 번째 줄에 시에 쓰지 않은 한 개의 단어를 출력한다.

▣ 입력예제 1
5
big
good
sky
blue
mouse
sky
good
mouse
big

▣ 출력예제 1
blue


import sys
from collections import deque
sys.stdin = open("input.text", "rt")
# input = sys.stdin.readline

N = int(input())
data= dict()
for i in range(N):
    word = input()
    data[word] = 1

for i in range(N-1):
    word = input()
    data[word] = 0

#1로 남은 것을 가져와서 출력하면 끝.
for key, val in data.items():
    if val == 1:
        print(key)
        break

🚗 코멘트
이 문제는 쉽게 풀 수 있지만 딕셔너리를 어떻게 활용할 지에 대해서 알아본다. 인덱스로 문자 혹은 문자열을 넣을 수 있기에 해당 문자가 몇번 등장하는지 += 1 이런 식으로 접근할 수 있다. 그렇기에 딕셔너리를 활용하는 문제들에 있어서 체화하면 매우 편하게 풀 수 있게 된다.

  • 딕셔너리 관련 라이브러리도 공부하면 좋아 !!
profile
back-end, 지속 성장 가능한 개발자를 향하여

0개의 댓글