<qiyuangong>096_Unique_Binary_Search_Trees_1.py
def numTrees( n):
    dp = [0] * (n + 1)
    dp[0] = 1
    dp[1] = 1
    for level in range(2, n + 1):
        for root in range(1, level + 1):
            dp[level] += dp[level - root] * dp[root - 1]
    return dp[n]
def sample_funcname ( var_0 ) :
    var_3 = [ 0 ] * ( var_0 + 1 )
    var_3 [ 0 ] = 1
    var_3 [ 1 ] = 1
    for var_6 in range ( 2 , var_0 + 1 ) :
        for var_7 in range ( 1 , var_6 + 1 ) :
            var_3 [ var_6 ] += var_3 [ var_6 - var_7 ] * var_3 [ var_7 - 1 ]
    return var_3 [ var_0 ]
