Post
나는야 포켓몬 마스터 이다솜(백준 1620번) | Gihun Son

나는야 포켓몬 마스터 이다솜(백준 1620번)

나는야 포켓몬 마스터 이다솜(백준 1620번)

문제

오박사 : 그럼 다솜아 이제 진정한 포켓몬 마스터가 되기 위해 도감을 완성시키도록 하여라. 일단 네가 현재 가지고 있는 포켓몬 도감에서 포켓몬의 이름을 보면 포켓몬의 번호를 말하거나, 포켓몬의 번호를 보면 포켓몬의 이름을 말하는 연습을 하도록 하여라. 나의 시험을 통과하면, 내가 새로 만든 도감을 주도록 하겠네.

Untitled

Untitled 1

Untitled 2

나의 풀이

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import sys
N,M=map(int,input().split())

id_name_dic=dict()
name_id_dic=dict()

for i in range(1,N+1):
    P_name=sys.stdin.readline().strip()
    id_name_dic[i]=P_name
    name_id_dic[P_name]=i
for j in range(M):
    test=sys.stdin.readline().strip()
    if test.isdigit():
        print(id_name_dic[int(test)])
    else:
        print(name_id_dic[test])
  • dictionary를 두개 만들어서, id가 들어오면 이름을, 이름이 들어오면 id를 출력할 수 있도록 코딩하였다.
  • 이 때, .isdigit()을 사용했는데, 문자열이 숫자만으로 이루어져 있는지 확인한다.
    • “1434”.isdigit()==True
    • “14d4d”.isdigit()==False
    • “1.42”.isdigit()==False (소수점은 숫자가 아니기 때문에 False, 주의해야 함)
This post is licensed under CC BY 4.0 by the author.