알고리즘 백준 1427 소트인사이드(파이썬)
백준 소트인사이드 파이썬
백준 파이썬 소트인사이드
문제
배열을 정렬하는 것은 쉽다. 수가 주어지면, 그 수의 각 자리수를 내림차순으로 정렬해보자.
입력
첫째 줄에 정렬하려고 하는 수 N이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이다.
출력
첫째 줄에 자리수를 내림차순으로 정렬한 수를 출력한다.
코드
import sys
N = int(sys.stdin.readline())
#map 사용 안할시
#num = list(str(N)) # 213이 들어오면 ['2','1','3']이됨
# for k in range(len(num)): # 리스트에 string으로 저장했으므로 int로 변환
# num[k] = int(num[k])
#map 사용 시
num = list(map(int,(str(N))))# 리스트에 string으로 저장했으므로 int로 변환
num = sorted(num,reverse=True) #내림차순정렬
num = list(map(str,num)) #안에 값이 int이므로 string으로 변환
strA = "".join(num) #리스트를 string형태로 변환
print(strA)
코드설명
1) 값을 받아서 리스트로 저장한다 -> 전에 문제에서는 for문으로 했는데 찾아보니 map을 사용하면 한줄로 된다고한다.
1-1) map은 map(함수,값)의 형태로 리스트나 튜플의 형태로 받아야 한다고 한다. 해당 원소들을 하나하나씩 함수로 집어넣는다고한다
2) num을 내림차순 정렬 (sorted reverse=True) 한 후 안에 값이 int임으로 String으로 변환한다.
3)리스트를 String으로 변환 후 출력하면 끝.
깃허브
https://github.com/developer-hyun/Algorithm-Study/tree/main
'알고리즘' 카테고리의 다른 글
알고리즘 백준 11651 좌표 정렬하기2(파이썬) (0) | 2022.01.07 |
---|---|
알고리즘 백준 11650 좌표정렬하기(파이썬) (0) | 2022.01.07 |
알고리즘 백준 2108 통계학(파이썬) (0) | 2022.01.07 |
알고리즘 백준 2751 수 정렬하기2(파이썬) (0) | 2022.01.07 |
알고리즘 백준 2750 수 정렬하기(파이썬) (0) | 2022.01.07 |