Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- c3 초
- c++ 정규식
- 정규식 컴파일
- gcc 업데이트
- g++ 업데이트
- influxdb 설치
- snmp
- 정규식 활용
- selinux port 등록
- grafana dashboard
- gcc regex
- subporcess path
- c3 step graph
- snmp test
- python popen
- semanage
- telegraf
- 1697
- c3 second
- 정규식 문자열 출력
- InfluxDB
- c3 축 가리기
- centos pyhon 설치
- regex_search
- python subprocess
- 백준
- python os
- linux시간으로 변경
- c3 축 없애기
- CentOS7
Archives
- Today
- Total
리셋 되지 말자
[백준 2805] 나무 자르기 - 이분 탐색 본문
코드
# 목표 갯수 : n, 나무 길이 목록 : arr
def solution(n, arr):
left = 1
right = max(arr)
mid = right
while left <= right:
tmp = 0
mid = (left + right) // 2
for tree in arr:
if tree - mid <= 0:
continue
tmp += tree - mid
# 잘린 길이가 목표 길이보다 길면, 높이를 더 위로 설정
if tmp >= n:
left = mid + 1
# 잘린 길이가 목표 길이보다 짧으면, 높이를 더 아래로 설정
elif tmp < n:
right = mid - 1
print(right)
a, n = map(int, input().split())
arr = list(map(int, input().split()))
solution(n, arr)
'알고리즘' 카테고리의 다른 글
[백준 1080] 체스판 다시 칠하기 - 브루트포스 (0) | 2022.01.18 |
---|---|
[백준 10816] 숫자 카드 2 - 자료구조, 정렬(?), 이분탐색(?) (0) | 2022.01.14 |
[백준 7568] 덩치 - 브루트포스 (0) | 2022.01.10 |
[백준 2108] 통계학 - 구현, 정렬 (0) | 2022.01.03 |
[백준 10989] 수 정렬하기 3 (0) | 2021.12.31 |
Comments