알고리즘/백준
[백준] 1620번: 나는야 포켓몬 마스터 이다솜 / 파이썬
홍우진
2025. 3. 5. 21:22
728x90
반응형
문제 링크
https://www.acmicpc.net/problem/1620
풀이 코드
import sys
input = sys.stdin.readline
n, m = map(int,input().split())
pok = {}
for i in range(n):
pok[str(i+1)] = input().rstrip() # 포켓몬명을 딕셔너리로 받는다. 뒤의 .rstrip()은 \n을 지워준다.
kop = {v:k for k,v in pok.items()} # vel:key 인 딕셔너리를 하나 더 만들어 시간복잡도를 줄인다.
for i in range(m):
moon = input().rstrip()
if moon.isdigit(): # 문제가 int라면
print(pok.get(moon))
else: # 문제가 str이라면
print(kop.get(moon))
코드 해석
시간복잡도 문제를 해결하는 것이 관건이었다.
velue로 key를 찾으려면 시간이 오래 걸렸는데,
반대로 뒤집어진 딕셔너리를 하나 더 만들어서 해결했다.
그리고 문제가 너무 길었다...ㅠ 중간에 그만둘 뻔...
체감 난이도: ★★☆☆☆
728x90
반응형