본문 바로가기
알고리즘/BOJ

[Python] 백준 2262번: 토너먼트 만들기

by PIAI 2021. 9. 14.

요약

어차피 마지막으로 남게되는 숫자는 1이기 때문에 제일 큰수부터 1이남을때까지 양쪽차중에 적은수를 더해주면 된다.

INF = 2147000000

n = int(input())
toner = [INF] + list(map(int, input().split())) + [INF]
ans = 0

while n >= 2:
    idx = toner.index(n)
    ans += min(abs(toner[idx] - toner[idx-1]), abs(toner[idx] - toner[idx+1]))
    del toner[idx]
    n -= 1

print(ans)

댓글