반응형
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 |
Tags
- Kafka
- 스프링 공부
- JPA 공부
- 코테공부
- nestjs공부
- 스프링부트공부
- 자료구조공부
- Flutter
- JPA
- 카프카
- DDD
- 알고리즘공부
- nestjs스터디
- K8S
- 스프링부트
- 기술공부
- 프로그래머스
- 플러터 개발
- 자바공부
- 플러터 공부
- 기술면접공부
- nestjs
- Axon framework
- JPA공부
- JPA예제
- 스프링
- JPA스터디
- 스프링공부
- querydsl
- 코테준비
Archives
- Today
- Total
DevBoi
[Binary Search]백준-2343 본문
반응형
https://www.acmicpc.net/problem/2343
쉽게 생각할수 있는 이분탐색 풀이이다.
이분탐색의 유형은 크게 두가지 풀이이다.
특정 배열이 있고, 해당 배열 내에서, 이분탐색으로 중간값을 구해서 값을 탐색하는 방법이 있고
특정 조건에 대한 리스트들을 생각해서, 만든뒤에 해당 조건들의 범위에서 이분탐색을 하는 경우가 있다.
해당 문제는 두번째 케이스이다.
각 레슨의 길이를 생각해서 최대의 길이를 계산, 그리고 cnt 를 증가 시키면서 세는 방법이다.
우선 소스든 최 하단에 있다.
가장 중요하게 생각해야하는 포인트가 범위는 각 레슨의 합이 될수있는 값들이다.
1. 가장작은값은 -> 배열의 가장작은 혼자의 값 또는, 0
2. 가장 큰값은 -> 배열의 모든 합이다.
따라서 end 는 배열의 모든 합, 반복 -> end+=les[i] 이고
해당 값을 기준으로 체크하는 함수에 넣고, cnt를 세준다.
sum이 0부터, 하나씩 더해가면서 mid로 던진값보다 커지면 sum을 해당 값으로 초기화하고, cnt를 1증가해준다는게 포인트다
반응형
'Algorithm > [Binary Search]' 카테고리의 다른 글
[Binary Search] 백준 1920 (0) | 2021.11.18 |
---|---|
[Binary Search] 백준 2110 풀이 (0) | 2021.11.18 |
[Binary Search] 백준 2512 (0) | 2021.11.11 |
[Binary Search] 백준 - 2805 (0) | 2021.11.11 |
[Binary Search] 개념 + 7795번 (0) | 2021.11.03 |