Adloun

Nombre maximal d'activités

Application directe du cours · niveau 1 (application) · NSI (terminale), chapitre 8 — Les algorithmes gloutons

Énoncé

Nombre maximal d'activités.

À partir de la fonction selection_activites, écrire nb_max_activites(activites) qui renvoie uniquement le nombre maximal d'activités compatibles.

Corrigé


def nb_max_activites(activites):
    activites = sorted(activites, key=lambda a: a[1])
    compte = 0
    fin_courante = float("-inf")
    for debut, fin in activites:
        if debut >= fin_courante:
            compte += 1
            fin_courante = fin
    return compte

acts = [(1, 4), (3, 5), (0, 6), (5, 7), (8, 9), (5, 9)]
print(nb_max_activites(acts))   # 3

Les autres exercices de ce chapitre Le cours du chapitre

Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.