인덱스 2 printf("upper_bound(4)의 인덱스: %d\n", ub_idx); // 4 초과의 첫 위치 -> 인덱스 5 return 0; } //찾는값이 없으면 n+1이 나온다."> 인덱스 2 printf("upper_bound(4)의 인덱스: %d\n", ub_idx); // 4 초과의 첫 위치 -> 인덱스 5 return 0; } //찾는값이 없으면 n+1이 나온다."> 인덱스 2 printf("upper_bound(4)의 인덱스: %d\n", ub_idx); // 4 초과의 첫 위치 -> 인덱스 5 return 0; } //찾는값이 없으면 n+1이 나온다.">
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
// 반드시 정렬되어 있어야한다!
int arr[7] = {1, 2, 4, 4, 4, 6, 7};
int n = 7;
int lb_idx = lower_bound(arr, arr + n, 4) - arr;
int ub_idx = upper_bound(arr, arr + n, 4) - arr;
printf("lower_bound(4)의 인덱스: %d\n", lb_idx); // 4 이상의 첫 위치 -> 인덱스 2
printf("upper_bound(4)의 인덱스: %d\n", ub_idx); // 4 초과의 첫 위치 -> 인덱스 5
return 0;
}
//찾는값이 없으면 n+1이 나온다.