SW Expert Academy
SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!
swexpertacademy.com
나의 코드
T= int(input())
for t in range(T):
N = int(input())
data = list(map(int, input().split()))
max_list = []
min_list = []
sum_v = 0
for i in range(1,N-1):
for j in range(i+1, N):
# print(sum(data[:i]), sum(data[i:j]), sum(data[j:]))
max_v = max(sum(data[:i]), sum(data[i:j]), sum(data[j:]))
max_list.append(max_v)
min_v = min(sum(data[:i]), sum(data[i:j]), sum(data[j:]))
min_list.append(min_v)
# print(max_list, min_list)
result = 9999999
for k in range(len(max_list)):
if result > max_list[k] - min_list[k]:
result = max_list[k] - min_list[k]
print(f'#{t+1} {result}')
결과

인덱스만 잘 생각해서 정리하면 분할은 쉬운 것 같다. 강사님이 알려주신 방법으로 인덱스로 분할하기 성공!
이제는 데이터를 읽으면서 계산하는 방법을 생각하면서 코드를 짧게 짜는 연습을 해야 할 것 같다.
'스터디 1일 1커밋' 카테고리의 다른 글
| 240302 [BOJ/백준] 2846. 오르막길 (0) | 2024.03.02 |
|---|---|
| 240301 [BOJ/백준] 2468. 안전 영역 (+수정) (0) | 2024.03.01 |
| 240228 [SWEA] 11315. 오목 판정 (1) | 2024.02.28 |
| 240227 [SWEA] 2805. 농작물 수확하기 (1) | 2024.02.28 |
| 240226 [BOJ/백준] 15650. N과 M (2) (1) | 2024.02.27 |