- 0
- 이니스프리
- 조회 수 554
1 2 3 4 5 6 7 8 9 10 | def solution(number): answer = '' number_count = [ 0 for _ in range ( 10 )] while number > 0 : number_count[number % 10 ] + = 1 number / / = 10 for i in range ( 9 , - 1 , - 1 ): if number_count[i] ! = 0 : answer + = ( str (i) + str (number_count[i])) return answer |
Q. 주어진 숫자를 각 숫자와 숫자의 개수로 읽으려 합니다. 이때, 값이 큰 숫자를 먼저 읽어야합니다.
예를 들어, 2433은 2 한개 4 한개 3 두개로 이루어져 있기 때문에 "413221"로 읽습니다.
숫자 number가 매개변수로 주어질 때, 숫자를 읽어 문자열로 return 하도록 solution 함수를 작성하시오.
원래 디버깅형 문제로 출제되었으나, 함수 완성형 문제로 출제될 가능성도 있을 것 같아서 올립니다.
(1) 수를 한 글자씩 배열에 넣어서 카운트하는 것, (2) range() 함수를 역으로 돌리는 것이 포인트라고 생각되네요 ^^
0이 포함되어야 되므로 range(9, 0, -1)이 아니라 range(9, -1, -1)인 것도 주의해야 됩니다.
작성자
댓글 0
권한이 없습니다.