stl upper_bound()
upper_bound( a , b , k )返回有序升序序列[a,b)中能放下k的第一个位置
一个数组number序列1,2,2,4.upper_bound(2)后,返回的位置是3...
lower_bound( a , b , k )同理
Mark....
-----------------------附加如果想把位置作为整型数字输出需要 - 数组名 - 1(-1是因为一般都是从1开始命名,前面给位置的时候就+1了...)
1 int a[50]={}; 2 a[1]=1; 3 a[2]=2; 4 a[3]=3; 5 a[4]=4; 6 cout<<upper_bound(a+1,a+1+4,3)-a-1<<endl;
以上代码输出3,若把a[2]改为3那么输出也为3;