[백준] 1755번 숫자놀이

거북이·2023년 1월 15일
0

백준[실버4]

목록 보기
60/91
post-thumbnail

💡문제접근

  • 딕셔너리를 이용해서 각 숫자를 key값으로 넣고 각 숫자의 영어 발음을 value값으로 넣는다.
  • M이상 N이하의 정수를 반복문으로 받아오고 해당 숫자를 영어로 발음하는 경우를 문자열로 저장하고 문자열과 정수를 리스트에 저장한다.
  • 저장된 리스트를 key = lambda를 이용해서 오름차순 정렬을 수행한 후 한 줄에 10개씩 출력하도록 코드를 작성했다.

💡코드(메모리 : 30616KB, 시간 : 36ms)

dict = {0 : "zero", 1 : "one", 2 : "two", 3 : "three", 4 : "four", 5 : "five", 6 : "six", 7 : "seven", 8 : "eight", 9 : "nine"}
M, N = map(int, input().split())
li = []
for i in range(M, N+1):
    i = str(i)
    result = ""
    for j in i:
        result += dict[int(j)]
    li.append([result, int(i)])

li = sorted(li, key = lambda x : x[0])
for i in range(len(li)):
    if i % 10 == 0 and i != 0:
        print()
    print(li[i][1], end = " ")

💡소요시간 : 8m

0개의 댓글