Function to return the maximum N such that the sum of the squares of first N natural numbers is not more than X
function findMaxN ( X ) { var low = 1 , high = 100000 ; var N = 0 ; while ( low <= high ) { var mid = ( high + low ) / 2 ; if ( squareSum ( mid ) <= X ) { N = parseInt ( mid ) ; low = mid + 1 ; } else high = mid - 1 ; } return N ; }