일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 자바강좌
- 인공지능
- 딥러닝
- 경사하강법
- 파이썬강좌
- JAVA강좌
- 머신러닝 강좌
- c언어 오목
- supervised learning
- 자바시작하기
- Python강의
- Gradient Descent
- 파이썬강의
- 자바
- java
- 비용함수
- 효묘블로그
- acmicpc.net
- 머신러닝공부
- feature scaling
- 머신러닝 강의
- C언어
- 지도학습
- python강좌
- unsupervised learning
- 머신러닝
- 선형회귀
- 백준 알고리즘
- 딥러닝공부
- 비지도학습
Archives
- Today
- Total
목록2025/05/05 (1)
컴공과컴맹효묘의블로그

https://www.acmicpc.net/problem/1725 입력이 10만이라, O(N^2)은 시간 내 풀이가 불가능합니다. "이 직사각형의 밑변은 항상 히스토그램의 아랫변에 평행하게 그려져야한다." 에서 아래쪽 밑변은 히스토그램의 아랫변과 겹치게 그리는 것이 항상 최대이고, 위쪽 밑변은 직사각형이 포함하는 막대들의 높이 중 최소인 막대의 윗변과 겹쳐야합니다. O(NlogN)가 걸리는 분할정복으로 풀어봤습니다.하나의 히스토그램을 절반으로 잘라서 왼쪽의 최대와 오른쪽의 최대, 그리고 중간을 포함하는 큰 히스토그램의 최대를 구하여 비교합니다.중간을 포함하는 큰 히스토그램은 투 포인터로 O(N)이 걸립니다. left와 right를 각각 mid, mid+1로 초기화 하고 left-1, right+1의 높이..
알고리즘/백준
2025. 5. 5. 17:26