lower_bound()和upper_bound()利用“二分”查找在有序数组中进行查找。
int a[100],p;
数组a要从小到大排序!!!
lower_bound(a,a+100,p)-a 返回的是在数组a中“大于或等于”p这个数的地址。不存在则返回100(队尾)。
upper_bound(a,a+100,p)-a 返回的是在数组a中“大于”p这个数的地址。不存在则返回100(队尾)。
数组a要从大到小排序!!!
lower_bound(a,a+100,p,greater<int>())-a 返回的是在数组a中“小于或等于”这个数的地址。不存在则返回100(队尾)。
upper_bound(a,a+100,p,greater<int>())-a 返回的是在数组a中“小于”这个数的地址。不存在则返回100(队尾)。