[백준-11497] 통나무 건너뛰기
문제
코드
import sys
input = sys.stdin.readline
t = int(input())
for _ in range(t) :
  n = int(input())
  tree = list(map(int, input().split()))
  # 오름차순으로 정렬
  tree.sort()
  
  height = [0] * n
  
  # 인접한 두 통나무 간의 높이의 차가 작아야하므로 정렬한 수를 지그재그로 넣는다.
  # 앞뒤앞뒤앞뒤... 순서로
  check = 0
  for i in range(len(tree)) :
    # 인덱스가 짝수일 때는 앞에 넣기
    if i % 2 == 0 :
      height[check] = tree[i]
      check += 1
    # 인덱스가 홀수일 때는 뒤에 넣기 
    else :
      chk = -1 * check
      height[chk] = tree[i]
  
  maxNum = 0
  for j in range(len(height)) :
    num = 0
    # 맨 뒤와 맨 앞도 인접해있으므로 값 비교
    if j > len(height)-2 :
      num = abs(height[j] - height[0])
    else :
      num = abs(height[j] - height[j+1])
    maxNum = max(maxNum, num)
  
  print(maxNum)
                Author And Source
이 문제에 관하여([백준-11497] 통나무 건너뛰기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@malgam/백준-11497-통나무-건너뛰기저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
                                
                                
                                
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)