이 문제는 주어진 숫자를 각 자리수를 내림차순으로 정렬하는 문제이다.
숫자를 각 자리수로 나누기 위해서는 문자열로 바꾸어서 리스트에 저장하는 방식으로 구현하였다.
for i in str(num):
num_list.append(i)
for문을 통해 입력받은 숫자를 문자열로 바꾼 후에 각 자리별로 리스트에 추가해주었다.
2143
['2', '1', '4', '3']
입력한 숫자가 이런식으로 리스트에 저장된다.
num_list.sort()
num_list.reverse()
그 다음에 sort함수를 이용해서 오름차순으로 정렬한 후에 reverse함수를 이용해서 역순으로 바꾸어 주었다.
for i in num_list:
print(i,end='')
마지막으로 for문을 통해서 리스트안에 숫자들을 프린트해주었다.
<전체코드>
import sys
input = sys.stdin.readline
num = int(input())
num_list = []
for i in str(num):
num_list.append(i)
# print(num_list)
num_list.sort()
num_list.reverse()
# print(num_list)
for i in num_list:
print(i,end='')
'백준 문제풀이' 카테고리의 다른 글
[백준 4153번 문제] 직각삼각형 (0) | 2022.08.12 |
---|---|
[백준 3009번 문제] 네 번째 점 (0) | 2022.08.11 |
[백준 25305번 문제] 커트라인 (0) | 2022.08.09 |
[백준 25304번 문제] 영수증 (0) | 2022.08.08 |
[백준 2108번 문제] 통계학 (0) | 2022.08.07 |