풀이
- 해당 문제는 무슨 말인가 하다가 입력값과 출력값을 확인해보니
- 큰 순서에 따라 번호를 메기는 문제로 파악하여 아래와 같이 해결할 수 있었다.
- 우선 result는 입력 받는 배열의 크기만큼 생성 후 초기값을 따로 설정하고
- 이후 2중 for문으로 계속 처음부터 조회할 수 있도록 했으며
- result[j] 가 초기값 -1이 아닐 경우엔 넘어가고
- low 값보다 result[j]가 작다면 변경 후 idx 또한 함께 바꾼다음
- 반복문이 마치면 그때 result 값을 변경해줘서 문제를 해결.
import sys
input = sys.stdin.readline
n = int(input())
li = list(map(int,input().split()))
result = [-1]*n
for i in range(n):
low = sys.maxsize
idx = 0
for j in range(n):
if result[j] != -1: continue
elif low > li[j]:
low = li[j]
idx = j
result[idx] = i
print(*result)
'알고리즘' 카테고리의 다른 글
[백준, 파이썬, 1225번] 이상한 곱셈 (0) | 2023.12.29 |
---|---|
[백준, 자바, 1015번] 수열 정렬 (0) | 2023.12.28 |
[백준, 자바, 1264번] 모음의 개수 (0) | 2023.12.28 |
[백준, 파이썬, 1264번] 모음의 개수 (0) | 2023.12.28 |
[백준, 자바, 1236번] 성 지키기 (2) | 2023.12.27 |