[백준/python/11497] 통나무 건너뛰기

bej_ve·2022년 5월 5일
0

python알고리즘

목록 보기
25/46

문제링크 : 통나무 건너뛰기

문제

그리디 문제는 항상 아이디어를 생각하는게 가장 어려운 것 같다. 이번문제는 통나무들의 높이 차이 중에서 가장 큰 값이 최소로 나오게끔 통나무를 배치하는 것이다. `아이디어`는 통나무를 높이대로 정렬한 배열을 list[]라고 한다면, list[0]과 list[2]를 옆에두고 list[1]과 list[3]을 옆에 두는 방식이다. 이 방법이 높이차를 가장 줄일 수 있는 방법이다. 마지막으로, 차이값들 중에서 최댓값을 찾아야하기 때문에 max를 사용했다.
import sys

input=sys.stdin.readline
t=int(input())
for _ in range(t):
    n=int(input())
    list=[int(x) for x in input().split()]
    list.sort(reverse=True)
    result=0
    for i in range(n-2):
        result=max(result,list[i]-list[i+2])
    print(result)

0개의 댓글