Recursive solution to count substrings with same first and last characters | Function to count substrings with same first and last characters ; Base cases ; Driver code
function countSubstrs ( str , i , j , n ) { if ( n == 1 ) return 1 ; if ( n <= 0 ) return 0 ; let res = countSubstrs ( str , i + 1 , j , n - 1 ) + countSubstrs ( str , i , j - 1 , n - 1 ) - countSubstrs ( str , i + 1 , j - 1 , n - 2 ) ; if ( str [ i ] == str [ j ] ) res ++ ; return res ; } let str = " " ; let n = str . length ; document . write ( countSubstrs ( str , 0 , n - 1 , n ) ) ;