add another variation of binary search