二分查找
----------------------------------------------------------------------找>=x的第一个位置-----------------------------------------------------------------------------------------------
while(l < r) { mid = (l + r) / 2; if(a[mid] >= x) r = mid; else l = mid + 1; }
----------------------------------------------------------------------找<=x的第一个位置-----------------------------------------------------------------------------------------------
while(l < r) { mid = (l + r + 1) / 2; if(a[mid] <= x) l = mid; else r = mid - 1; }
二分查找stl