문제풀이/BOJ
[Python] BOJ/백준 1380번 귀걸이
서채리
2021. 7. 18. 07:35
[문제]
https://www.acmicpc.net/problem/1380
1380번: 귀걸이
입력은 번호를 가진 시나리오들로 구성됩니다. 시나리오 번호는 1부터 순서대로 증가하고, 각 시나리오는 아래의 내용을 포함합니다. 한 줄에 귀걸이를 압수당한 여학생의 수, n (1 ≤ n ≤ 100)이
www.acmicpc.net
[풀이]
earring 딕셔너리에 학생 번호를 key 값, 알파벳을 value 값으로 받는다. 만약 입력받은 학생 번호가 earring 딕셔너리에 이미 존재한다면 해당 번호를 딕셔너리에서 삭제한다.
next(iter(earring)) 는 iter() 함수를 이용해 딕셔너리의 첫 번째 키를 가져오는 방법이다.
이는 list(earring.keys())[0] 이렇게 사용해도 똑같은 결괏값을 가져온다.
[코드]
if __name__ == '__main__':
scenario = 0
while True:
n = int(input())
if n == 0:
break
scenario += 1
student = [input() for _ in range(n)]
earring = {}
for i in range(2*n - 1):
num, alphabet = input().split()
if num in earring:
del earring[num]
else:
earring[num] = alphabet
angry = int(next(iter(earring)))
print(scenario, student[angry-1])