본문 바로가기
코딩 테스트/do it! 알고리즘 코딩테스트

017 소트인사이드

by ornni 2024. 4. 30.
728x90
반응형

첫번째 코드

 

버블을 사용하자!

그러면 이전에 했던 방식으로 버블을 사용하여 오름차순을 만든 후 reverse를 적용하면 내림차순이 된다!

 

import sys
input = sys.stdin.readline

A = list(input())

n = len(A)
for i in range(n):
    for j in range(n-i-1):
        if A[j] > A[j+1]:
            temp = A[j]
            A[j] = A[j+1]
            A[j+1] = temp
A.reverse()

print(''.join(A))

 

통과!

 

여기서 주의점! list(input())은 1234를 넣으면 ['1', '2', '3', '4']로 저장되는 방법이다!


두번째 코드

 

버블을 내림차순으로 할 수는 없을까?

그러면 거꾸로 앞에서부터 swap을 진행하는 것이 아니라 뒤에서부터 swap을 진행하면 될 듯 하다

 

그리고 마지막에 엔터까지 누른 것 까지 input으로 들어가기 때문에 이를 제외하고 진행하기 위해 

마지막 원소를 제거하는 과정이 필요하다!

 

import sys
input = sys.stdin.readline

A = list(input())
A = A[:-1]
n = len(A)
for i in range(n):
    for j in range(n-1, i, -1):
        if A[j] > A[j-1]:
            temp = A[j]
            A[j] = A[j-1]
            A[j-1] = temp

print(''.join(A))

 

통과!


링크

https://github.com/ornni/programmers/tree/main/%EB%B0%B1%EC%A4%80/Silver/1427.%E2%80%85%EC%86%8C%ED%8A%B8%EC%9D%B8%EC%82%AC%EC%9D%B4%EB%93%9C

 

programmers/백준/Silver/1427. 소트인사이드 at main · ornni/programmers

repository for recording Programmers Algorithm problem solving - ornni/programmers

github.com

 

반응형

'코딩 테스트 > do it! 알고리즘 코딩테스트' 카테고리의 다른 글

019 K번째 수 (미해결)  (0) 2024.05.02
018 ATM  (0) 2024.04.30
015 수 정렬하기  (0) 2024.04.25
016 버블 소트  (0) 2024.04.25
014 절댓값 힙  (0) 2024.04.22