
    Given a maximum allowable delivery time in minutes and the number of sequential delivery segments, determine how many possible delivery route combinations exist where each segment takes at least twice as long as the previous segment due to increasing complexity, while ensuring no segment exceeds the maximum time limit. The route combinations must account for progressively longer delivery times in each segment while maintaining efficient delivery schedules.
    

    
def get_total_number_of_sequences(m, n):
    """
    Given a maximum allowable delivery time in minutes and the number of sequential delivery segments, determine how many possible delivery route combinations exist where each segment takes at least twice as long as the previous segment due to increasing complexity, while ensuring no segment exceeds the maximum time limit. The route combinations must account for progressively longer delivery times in each segment while maintaining efficient delivery schedules.
    

    """
def get_total_number_of_sequences(m, n):
    """
    Given a maximum allowable delivery time in minutes and the number of sequential delivery segments, determine how many possible delivery route combinations exist where each segment takes at least twice as long as the previous segment due to increasing complexity, while ensuring no segment exceeds the maximum time limit. The route combinations must account for progressively longer delivery times in each segment while maintaining efficient delivery schedules.
    

    """
    T = [[0 for i in range(n + 1)] for i in range(m + 1)]
    for i in range(m + 1):
        for j in range(n + 1):
            if i == 0 or j == 0:
                T[i][j] = 0
            elif i < j:
                T[i][j] = 0
            elif j == 1:
                T[i][j] = i
            else:
                T[i][j] = T[i - 1][j] + T[i // 2][j - 1]
    return T[m][n]