def recherche(t, v, g, d):
    """renvoie une position de v dans t[g..d],
       supposé trié, et None si elle ne s'y trouve pas"""
    if g > d:
        return None
    m = (g + d) // 2
    if t[m] < v:
        return recherche(t, v, m + 1, d)
    elif t[m] > v:
        return recherche(t, v, g, m - 1)
    else:
        return m

def recherche_dichotomique(t, v):
    """renvoie une position de v dans le tableau t,
       supposé trié, et None si elle ne s'y trouve pas"""
    return recherche(t, v, 0, len(t) - 1)