본문 바로가기
Beakjoon&프로그래머스/파이썬

[백준/파이썬]1015번 수열 정렬

by 현장 2021. 9. 3.

-코드

n = int(input())
p = list(map(int, input().split()))
b = sorted(p)
r = []
for i in range(n):
    for j in range(n):
        if p[i] == b[j]:
            r.append(j)
            b[j] -= 1
            break
print(*r)

처음에 예제의 출력이 잘 나와서 제출했으나 틀려서 찾아보니 중복 값이 입력이 되었을 때, 문제가 생기는 것을 알게 되어서 한번 찾은 값은 -1을 해주어 다시 값이 나오지 않도록 해주었고 break를 안 넣어주면 추가로 리스트 r에 저장이 되기 때문에 넣어서 해결을 하였습니다.