This function could be refactored slightly if we assumed the input was always sorted, but a special for a single point input is also fine.
This function could be refactored slightly if we assumed the input was always sorted, but a special for a single point input is also fine.