[백준/Python] 1620번 - 나는야 포켓몬 마스터 이다솜

Sujin Lee·2022년 8월 22일
0

코딩테스트

목록 보기
100/172
post-thumbnail

문제

1620번 - 나는야 포켓몬 마스터 이다솜

해결 과정

시행착오

  • 시간 초과 -> isdigit() 사용, rstrip()사용, dictionary사용
import sys

n,m = map(int,sys.stdin.readline().split())

book = []
for _ in range(n):
  book.append(sys.stdin.readline().split()[0])
  

for _ in range(m):
  problem = sys.stdin.readline().split()[0]
  try:
    int(problem)
    print(book[int(problem)-1])
  except ValueError:
    print(book.index(problem) + 1)

풀이

import sys

n,m = map(int,sys.stdin.readline().split())

# 포켓몬 이름만 저장하는 배열
name_book = []
# key: 포켓몬 이름, value: 포켓몬 번호
book = {}

for i in range(n):
  pk = sys.stdin.readline().rstrip()
  name_book.append(pk)
  book[pk] = i+1

for _ in range(m):
  problem = sys.stdin.readline().rstrip()
  if problem.isdigit():
    print(name_book[int(problem)-1])
  else:
    print(book[problem])

Python 문법

isdigit()

  • string 클래스에 있는 메서드
  • str.isdigit()
  • 문자열이 '숫자'로만 이루어져있는지 확인하는 함수
  • 문자가 '단 하나'라도 있다면 False 반환
    모든 문자가 '숫자'로만 이루어져있으면 True 반환
profile
공부한 내용을 기록하는 공간입니다. 📝

0개의 댓글