드디어 혼자 풀었다. 너무 행복하다...
여기서 내가 구글링했던 정보들
1. 배열요소 앞, 뒤 추가
deque를 import 해와서 앞뒤에 값을 추가해주는 appendleft() , append()를 사용했다.
정보를 내가 원하는대로 정렬한 뒤 다시 list에 담아서 다음 작업을 진행했다.
from collections import deque
my_list = [2, 9, 3]
deq = deque(my_list)
deq.appendleft('a')
new_list = list(deq)
print(new_list)
2. 절대값
abs('원하는값')
3. 나의 제출 코드
import sys
from collections import deque
#절대값 abs(,,)
n=int(sys.stdin.readline())
data=[]
for x in range(n):
k=int(sys.stdin.readline())
target=list(map(int,sys.stdin.readline().split()))
data.append(target)
for y in data:
y.sort(reverse=True)
new_y=deque(y)
#print(new_y)
sorted_list=[]
new_sorted_list=deque(sorted_list)
for i in range(0,len(y)):
if i%2==0:
new_sorted_list.appendleft(y[i])
else:
new_sorted_list.append(y[i])
#위 작업을 통해 원하는 정답이 나오는 배열로 정렬 완료
#print(new_sorted_list)
result_list=list(new_sorted_list)
#print(result_list)
#인접한 값들의 차이를 계산해서 배열에 넣는 작업
target_value_list=[]
for j in range(0,len(result_list)):
minus_value=abs(result_list[j-1]-result_list[j])
target_value_list.append(minus_value)
#배열에 담긴 값들 중 max값 출력
print(max(target_value_list))
'Problem Solving > 알고리즘' 카테고리의 다른 글
[백준] 1931 - 회의실 배정 (그리디 알고리즘) (0) | 2022.07.08 |
---|---|
[백준]1946 - 신입사원 (0) | 2022.07.07 |
[백준][파이썬] - 1263 시간관리 (0) | 2022.07.05 |
[백준] 1522 - 슬라이딩 윈도우 (0) | 2022.06.30 |
[백준]1254 - 팰린드롬 만들기 (0) | 2022.06.30 |