def binarySearch(arry:Array[Int], needed:Int):Int={
var left = 0
var right = arry.length -1
while(left < right) {
val mid:Int = (right - left)/2 + left
needed match {
case _ if needed > arry.apply(mid) => left = mid
case _ if needed < arry.apply(mid) => right = mid
case _ if needed == arry.apply(mid) => return mid + 1
}
}
return -1
}