code: func findIndex(c int, points []int) int {
  	a, b := 0, len(points)
  	for b-a > 1 {
  		d := int(uint(a+b) >> 1)
  		if points[d] > c {
  			b = d
  		} else if points[d] < c {
  			a = d
  		} else {
  			return d
  		}
  	}
  	return a
  }
docs: /*
  Finds the largest entry whose value is less than or equal to c, or
  0 if there is no such entry.
  */