728x90
반응형
헤더파일
#include <algorithm>
lower_bound
- 찾으려는 value 값보다 같거나 큰 숫자가 배열에서 처음 등장하는 위치 리턴
- 사용 조건 : 탐색을 진행할 배열 또는 벡터가 오름차순 정렬되어 있어야 함
- 사용법
lower_bound(arr, arr+n, value); // 배열
lower_bound(v.begin(), v.end(), value); // 벡터
lower_bound 의 반환형은 iterator이기 때문에 인덱스를 알고싶은 경우
lower_bound(arr, arr+n, value) - arr; // 배열
lower_bound(v.begin(), v.end(), value) - v.begin(); // 벡터
이렇게 사용하면 된다
upper_bound
- 찾으려는 value 값을 초과하는 숫자가 배열에서 처음으로 등장하는 위치 리턴
- 사용 조건 : 탐색을 진행할 배열 또는 벡터가 오름차순 정렬되어 있어야 함
- 사용법
upper_bound(arr, arr+n, value); // 배열
upper_bound(v.begin(), v.end(), value); // 벡터
upper_bound 의 반환형은 iterator이기 때문에 인덱스를 알고싶은 경우
upper_bound(arr, arr+n, value) - arr; // 배열
upper_bound(v.begin(), v.end(), value) - v.begin(); // 벡터
이렇게 사용하면 된다
예제
https://develop-me-z.tistory.com/115
728x90
반응형
'알고리즘 > C++' 카테고리의 다른 글
[C++] next_permutation 함수 (순열, 조합) (0) | 2023.01.07 |
---|---|
[C++] 1e9, 2e9 뜻 (0) | 2023.01.01 |
[C++] vector - find 함수 (값의 존재 유무 확인 & 위치 구하기) (0) | 2022.12.29 |
[C++] 수 거듭 제곱하기 (POW 함수) (0) | 2022.12.29 |
[C++] 숫자 한자리씩 분리하기 (0) | 2022.12.29 |