Find the number of stair steps | Modified Binary search function to solve the equation ; If mid is solution to equation ; If our solution to equation lies between mid and mid - 1 ; If solution to equation is greater than mid ; If solution to equation is less than mid ; Driver code ; Call binary search method to solve for limits 1 to T ; Because our pattern starts from 2 , 3 , 4 , 5. . . so , we subtract 1 from ans
function solve ( low , high , T ) { while ( low <= high ) { let mid = Math . floor ( ( low + high ) / 2 ) ; if ( ( mid * ( mid + 1 ) ) == T ) return mid ; if ( mid > 0 && ( mid * ( mid + 1 ) ) > T && ( mid * ( mid - 1 ) ) <= T ) return mid - 1 ; if ( ( mid * ( mid + 1 ) ) > T ) high = mid - 1 ; else low = mid + 1 ; } return - 1 ; } let T = 15 ; let ans = solve ( 1 , T , 2 * T ) ; if ( ans != - 1 ) ans -- ; document . write ( " " + ans ) ;