백준 1427 파이썬 선택 정렬 사용
2024. 2. 18. 08:28ㆍ코딩 도구/백준
반응형
백준 1427 - 소트인사이드
문제
https://www.acmicpc.net/problem/1427
답안 코드 :
import sys
print = sys.stdout.write
A = list(input())
for i in range(len(A)):
Max = i
for j in range(i + 1, len(A)):
if A[j] > A[Max]: # 내림차순이므로 최댓값을 찾음
Max = j
if A[i] < A[Max]:
temp = A[i]
A[i] = A[Max]
A[Max] = temp
for i in range(len(A)):
print(A[i])
생각 :
# 문제 분석
# 자연수를 받아 자릿수별로 정렬해야함.
# 먼저 숫자를 각 자릿수별로 나누는 작업 필요
# -> 파이썬에서는 input 데이터를 list로 변환하면 자동으로 자릿수 나누어 리스트화 해준다.
# ( 파이썬 짱 )
# 이번에도 그저 sort()함수를 이용하면 되지만, N의 길이가 크지 않으니까 선택 정렬을 사용해서 내림차순 정렬해봐야지.
# 정렬 알고리즘 링크 첨부
https://mkisos.tistory.com/entry/%EC%A0%95%EB%A0%AC-%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98-%EB%B2%84%EB%B8%94-%EC%A0%95%EB%A0%AC-%EC%84%A0%ED%83%9D-%EC%A0%95%EB%A0%AC-%EC%82%BD%EC%9E%85-%EC%A0%95%EB%A0%AC-%ED%80%B5-%EC%A0%95%EB%A0%AC-%EB%B3%91%ED%95%A9-%EC%A0%95%EB%A0%AC-%EA%B8%B0%EC%88%98-%EC%A0%95%EB%A0%AC
# 문제 풀이
# 1. list 변환 사용해서 데이터를 리스트에 저장
# 2. 데이터들을 선택 정렬 알고리즘 이용해서 내림차순 정렬
# 내림차순 정렬이니까 최댓값 찾아서 기준이 되는 자리와 swap
반응형
'코딩 도구 > 백준' 카테고리의 다른 글
백준 11004 파이썬 퀵 정렬 (1) | 2024.02.20 |
---|---|
백준 11399 파이썬 삽입정렬 그리디 (38) | 2024.02.19 |
백준 2750 파이썬 정렬(sort함수 사용x) 직접 구현 (38) | 2024.02.17 |
백준 11286 파이썬 우선순위 큐 sys.stdout.write (37) | 2024.02.16 |
백준 2164 파이썬 큐 이해 문제 Queue (29) | 2024.02.15 |