목차
단어찾기
현수는 영어로 시는 쓰는 것을 좋아합니다.
현수는 시를 쓰기 전에 시에 쓰일 단어를 미리 노트에 적어둡니다.
이번에는 N개의 단어를 노트에 적었는데 시에 쓰지 않은 단어가 하나 있다고 합니다.
여러분이 찾아 주세요.
▣ 입력설명
첫 번째 줄에 자연수 N(3<=N<=100)이 주어진다.
두 번째 줄부터 노트에 미리 적어놓은 N개의 단어가 주어지고, 이어 바로 다음 줄부터 시에 쓰인 N-1개의 단어가 주어진다.
▣ 출력설명
첫 번째 줄에 시에 쓰지 않은 한 개의 단어를 출력한다.
▣ 입력예제 1
5
big
good
sky
blue
mouse
sky
good
mouse
big
▣ 출력예제 1
blue
나의 코드
from collections import defaultdict
n=int(input())
dic=defaultdict()
for i in range(n):
temp=input()
dic[temp]=1
for i in range(n-1):
temp2=input()
dic[temp2]-=1
print()
for x in dic.keys():
if dic[x]==1:
print(x)
딕셔너리를 사용해서 구현하긴 했지만 좋은 코드는 아닌것 같다..
라이브러리에서 제공하는 defaultdict와 기본 dict와의 차이점도 헷갈려하니 다시 공부하고 더 좋은 코드를 짜보아야겠당..!
정답 코드
import sys
sys.stdin=open("input.txt", "r")
n=int(input())
p=dict()
for i in range(n):
word=input()
p[word]=1
for i in range(n-1):
word=input()
p[word]=0
for key, val in p.items():
if val==1:
print(key)
break
아아 키와 벨류 한번에 가져오는 함수는 items !!!
'코딩테스트[파이썬] > 알고리즘 문제풀이 입문' 카테고리의 다른 글
[최소힙 & 최대힙] (0) | 2024.02.10 |
---|---|
[스택&큐&해쉬] - Anagram(아나그램) (2) | 2024.02.10 |
[스택 & 큐] - 교육과정 설계 (0) | 2024.02.09 |
[스택 & 큐] -응급실 (0) | 2024.02.09 |
[스택 & 큐] -공주 구하기 (1) | 2024.02.09 |