Make Unreal REAL.
article thumbnail

 

lower_bound(val): val보다 크거나 같은 첫 반복자 위치를 반환한다.

upper_bound(val): val보다 큰 첫 반복자 위치를 반환한다.

  • 둘 모두 이진 검색을 사용하므로 정렬된 상태에서만 사용해야 한다.

 

#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

void main()
{
    vector<int> v = {6, 3, 1, 4, 7, 6, 2, 1};
    
    cout << "lower_bound(4): " << *lower_bound(v.begin(), v.end(), 4) << endl;
    cout << "upper_bound(4): " << *upper_bound(v.begin(), v.end(), 4) << endl << endl;
    
    sort(v.begin(), v.end());
    cout << "sort()" << endl << endl;
    
    cout << "lower_bound(4): " << *lower_bound(v.begin(), v.end(), 4) << endl;
    cout << "upper_bound(4): " << *upper_bound(v.begin(), v.end(), 4) << endl;
}

 

출력

lower_bound(4): 4
upper_bound(4): 7

sort()

lower_bound(4): 4
upper_bound(4): 6
profile

Make Unreal REAL.

@diesuki4

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!

검색 태그