def puissance(a, n):
    
def fusion(L1, L2):
    if L1 == [] or L2 == []:
        return ...
    if L1[0] <= L2[0]:
        return ... + fusion(L1[1:], L2)
    return [L2[0]] + ...


def tri_fusion(liste):
    if len(liste) <= 1:
        return ...

    milieu = ...

    demi_liste1 = liste[...]
    demi_liste2 = liste[...]

    demi_liste1_triee = ...
    demi_liste2_triee = ...

    return ...(demi_liste1_triee, demi_liste2_triee)