#include <iostream>
#include <algorithm>
#include <vector>
void funcLower(int num, const std::vector<int>& vec){
auto itr = std::lower_bound(vec.begin(), vec.end(), num);/*第一个不小于*/
if (itr == vec.end())
{
std::cout << "not find" << std::endl;
}
else
{
std::cout << (*itr) << std::endl;
}
}
void funcUpper(int num , const std::vector<int>& vec){
auto itr = std::upper_bound(vec.begin(), vec.end(), num);/*第一个大于*/
if (itr == vec.end())
{
std::cout << "not find" << std::endl;
}
else
{
std::cout << (*itr) << std::endl;
}
}
int main(){
std::vector<int> vec = {1,3,5,9};
for(int i =0;i<10;++i){
std::cout<<"test "<<i<<std::endl;
funcLower(i,vec);
funcUpper(i,vec);
}
return 0;
}
输出: