알고리즘

[코드 트리] 밭의 높이를 고르게하기 / 완전 탐색

hp0724 2024. 8. 23. 11:21

문제 링크: https://www.codetree.ai/missions/5/problems/equalizing-the-height-of-the-field?&utm_source=clipboard&utm_medium=text

 

 

코드

#  N개의 밭의 높이가 주어지면 연속하게 최소 T번 이상 H높이로 나오게끔 하려고 할 때
N,H,T = map(int,input().split())

arr = list(map(int,input().split()))

min_value = 1e6
for i in range(N-T+1):
    temp = 0
    for j in range(T):
        temp += abs(H-arr[i+j])
    min_value = min(min_value,temp)

print(min_value)

 

코드 설명

 

최소 T번 이상으로 최소 값을 나오게하려면 딱 T번의 구간을 확인하는것이 최소 값을 구하기에 좋다. 

T 만큼의 범위를 잡고 생각해서 코드를 짜준다.