利用STL二分查找范围
设要查询的数组为A,A有n个元素,且递增排列
查询>=x的第一个下标 int p=lower_bound(A,A+n,x)-A;
查询>x的第一个下标 int p=upper_bound(A,A+n,x)-A;
查询<=x的最后一个下标 int p=upper_bound(A,A+n,x)-A-1;
查询<x的最后一个下标 int p=lower_bound(A,A+n,x)-A-1;
查询等于x的数量int n=upper_bound(A,A+n)-lower_bound(A,A+n);
以上基本就是完整的利用二分查找范围了

浙公网安备 33010602011771号