1. //STL
  2. int pos = lower_bound(a, a + n, x) - a;
  3. int pos = upper_bound(a, a + n, x) - a;
  4. //lower_bound() 函数用于在指定区域内查找不小于目标值的第一个元素。也就是说,使用该函数在指定范围内查找某个目标值时,最终查找到的不一定是和目标值相等的元素,还可能是比目标值大的元素。
  5. //upper_bound() 函数的功能和 lower_bound() 函数不同,前者查找的是大于目标值的元素,而后者查找的不小于(大于或者等于)目标值的元素。

例题,和为给定数

  1. //