Python 문제 중 접근하기 어려운 문제에 대해 회고하기 위함으로 포스팅함
인자인 height는 숫자로 이루어진 배열입니다.그래프로 생각한다면 y축의 값이고,
높이 값을 갖고 있습니다.
아래의 그래프라면 height 배열은 [1, 8, 6, 2, 5, 4, 8, 3, 7] 입니다.
저 그래프에 물을 담는다고 생각하고, 물을 담을 수 있는 가장 넓은 면적의 값을 반환해주세요.
배열의 길이는 2이상입니다.
def get_max_area(height): result = [] for i in range(0,len(height)-1): for j in range(i+1,len(height)): result.append((min(height[i],height[j])*abs(j-i))) return max(result)
My opinion
- 수학적으로는 간단하지만 해당 이론을 coding으로 풀기에는 아직 고민을 좀 해야하는 것 같다. 지속적으로 문제를 풀어보는게 다양하게 사고를 키울 수 있는 좋은 방법 같다.