def main():
    prices = [6, 10, 12, 15, 20, 23]
    n = len(prices)
    expected_max_revenue = 36
    max_rev_top_down = top_down_cut_rod(n, prices)
    max_rev_bottom_up = bottom_up_cut_rod(n, prices)
    max_rev_naive = naive_cut_rod_recursive(n, prices)
    assert (expected_max_revenue == max_rev_top_down)
    assert (max_rev_top_down == max_rev_bottom_up)
    assert (max_rev_bottom_up == max_rev_naive)
def main():
    prices = [6, 10, 12, 15, 20, 23]
    n = len(prices)
    expected_max_revenue = 36
    max_rev_top_down = top_down_cut_rod(n, prices)
    max_rev_bottom_up = bottom_up_cut_rod(n, prices)
    max_rev_naive = naive_cut_rod_recursive(n, prices)
    assert (expected_max_revenue == max_rev_top_down)
    assert (max_rev_top_down == max_rev_bottom_up)
    assert (max_rev_bottom_up == max_rev_naive)