Algorithm/백준
[Do it! 알고리즘] 내림차순으로 자릿수 정렬하기(백준 1427)
potato_pizza
2024. 3. 9. 00:37
728x90
Do it! 알고리즘 코딩테스트
선택 정렬
- 선택 정렬은 대상 데이터에서 최대나 최소 데이터를 데이터가 나열된 순으로 찾아가며 선택하는 방법
- 시간 복잡도가 $O(n^2)$로 복잡하기 때문에 코딩테스트에서는 많이 사용하지 않음.
문제017 (백준 1427)
https://www.acmicpc.net/problem/1427
[1427번: 소트인사이드
첫째 줄에 정렬하려고 하는 수 N이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이다.
www.acmicpc.net](https://www.acmicpc.net/problem/1427)
- 선택 정렬 풀이
import sys
input = sys.stdin.readline
N = list(input)
length=len(N)
for i in range(length):
max_idx=i
for j in range(i+1,length):
if N[j]>N[max_idx]:
max_idx=j
if N[i] < N[max_idx]:
temp = N[i]
N[i] = N[max_idx]
N[max_idx] = temp
for i in range(len(N)):
print(N[i], end="")
- 내장 함수 풀이
N = int(input())
li = []
for i in str(N):
li.append(int(i))
li.sort(reverse=True) # 내림차순 정렬
for i in li:
print(i, end='')
Reference
- https://www.acmicpc.net/problem/1427
- https://karla.tistory.com/m/225
- Do it! 알고리즘 코딩테스트 책
728x90
반응형