programme de première | |
---|---|
E1 : | listes |
E2 : | listes |
E3 : | listes |
E4 : | tri par insertion |
E5 : | tri par séléction |
E6 : | dictionnaires / string |
E7 : | tuple |
E8 : | boucle / booléen / liste |
E9 : | string |
E10 : | dictionnaire / fonctions |
E11 : | booléens / listes |
récursivité | |
---|---|
E1 : | somme d'entiers |
E2 : | chiffres romains |
E3 : | factorielle |
E4 : | rendu de monnaie |
POO | |
---|---|
E1 : | la classe Chien |
E2 : | carrés semi-magiques |
E3 : | filtre sur une pile |
E4 : | durées en POO |
Arbres | |
---|---|
E1: | Hauteur et taille d'un arbre |
E2: | parcours 1 |
E3: | parcours 2 |
E4: | Recherche dans un ABR |
E5: | Arbre binaire additif |
E6: | Arbre binaire de recherche |
Diviser pour régner | |
---|---|
E1 : | sommet d'un tableau |
E2 : | Indice d'une panne |
E3 : | calcul d'une puissance |
Sécurisation des communications | |
---|---|
E1 : | code César |
E2 : | Vigenre |
Un tableau unimodal est un tableau :
i
, i
, sont strictement décroissants.Le sommet d'un tableau unimodal est sa plus grande valeur.
Ainsi :
[1, 2, 3, 2, 1, 0]
est un tableau unimodal, son sommet est 3.[1, 2, 3, 5, 10, 9]
est un tableau unimodal, son sommet est 10.[1, 2, 3]
n'est pas un tableau unimodal, il n'y a pas de descente à la fin,[1, 2]
non plus, il n'y a pas assez d'éléments (au moins trois),[5, 3, 0]
non plus, il n'y a pas de montée au début.Remarquons bien que le sommet n'est jamais la première valeur ni la dernière valeur.
Compléter la fonction sommet
utilisant le principe diviser pour régner afin de déterminer le sommet du tableau unimodal.
La fonction reçoit en paramètre un tableau intitulé valeurs
, qu'on supposera unimodal, sous la forme d'une liste Python et renvoie son sommet.