Skip to content

Conversation

@0224LJH
Copy link
Contributor

@0224LJH 0224LJH commented Sep 12, 2025

🧷 문제 링크

https://www.acmicpc.net/problem/1725

🧭 풀이 시간

120분

👀 체감 난이도

✏️ 문제 설명

히스토그램의 내부에 가장 넓이가 큰 직사각형을 그리려고 한다. 이 직사각형의 밑변은 항상 히스토그램의 아랫변에 평행하게 그려져야 한다.

첫 행에는 N (1 ≤ N ≤ 100,000) 이 주어진다. N은 히스토그램의 가로 칸의 수이다. 다음 N 행에 걸쳐 각 칸의 높이가 왼쪽에서부터 차례대로 주어진다. 각 칸의 높이는 1,000,000,000보다 작거나 같은 자연수 또는 0이다.

🔍 풀이 방법

다양한 방법을 시도해봤는데, 다 실패했다.
결국 힌트에서 분할정복이라는 것을 보고 , 지금의 로직을 떠올렸다.

s부터 e 까지 범위에서 가장 큰 직사각형의 크기를 f(s,e)라 해보자.
mid = (s+e)/2일때,
f(s,e)는 f(s,mid) , f(mid+1, e), 그리고 mid,mid+1칸을 포함하는 직사각형들중 가장 큰 값을 구하면 된다.

⏳ 회고

세그먼트라는 힌트때문에 오히려 시간을 더 썼다. 논리상으로는 들어가긴 하지만...

@0224LJH 0224LJH added success 👍 해설을 보지 않고 풀었을 때 hint 💡 반례를 참고했거나 힌트를 얻고 풀었을 때 timeout ⌚ 목표 시간보다 오래걸렸을 때 labels Sep 12, 2025
@ShinHeeEul ShinHeeEul merged commit 7ab1930 into main Sep 12, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

hint 💡 반례를 참고했거나 힌트를 얻고 풀었을 때 success 👍 해설을 보지 않고 풀었을 때 timeout ⌚ 목표 시간보다 오래걸렸을 때

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants