[백준/python/1138] 한 줄로 서기

bej_ve·2022년 10월 23일
0

python알고리즘

목록 보기
32/46

  • 그리디 알고리즘
    각 단계에서 가장 최선의 선택을 하는 방법
    탐욕 알고리즘을 적용시키려면 두가지 조건을 만족해야 한다.
    1-앞의 선택이 이후의 선택에 영향을 주지 않아야 한다.
    2-문제의 최적해가 부분 문제에 대해서도 최적해여야 한다.

<문제 설명>
사람들은 자기보다 큰 사람이 왼쪽에 몇 명 있었는지만을 기억한다. N명의 사람이 있고, 사람들의 키는 1부터 N까지 모두 다르다.

각 사람들이 기억하는 정보가 주어질 때, 줄을 어떻게 서야 하는지 출력하는 프로그램을 작성하시오.

<코드>

n=int(input())
list=list(map(int, input().split()))
ans=[0]*n
for j in range(1, n+1):
    t=list[j-1]
    cnt=0
    for i in range(n):
        if cnt==t and ans[i]==0:
            ans[i]=j
            break
        elif ans[i]==0:
            cnt+=1
print(*ans)

0개의 댓글