Problématique python
Résolu
Alexx
-
yg_be Messages postés 24281 Statut Contributeur -
yg_be Messages postés 24281 Statut Contributeur -
Salut,
Je dois écrire une fonction max(L) qui, pour une int-liste L donnée de longueur n≥1, renvoie la longueur maximale d'une suite unimodulaire. (une suite est dite unimodulaire dans le cas où a0≤a1≤...≤ai≥ai+1≥...ad ) Par exemple : L=[1,2,3,2,1,3,6,3,6] L contient deux séquences unimodulaires : 1,2,3,2,1 de longueur 5 et 1,3,6,3 de longueur 4. La première a une longueur maximale, donc max(L) devrait retourner la valeur 5. Si vous avez des idées, partagez-les avec moi ! Merci.
Mon idée était d'abord de convertir la liste en une chaîne de caractères pour voir où elle est ascendante, descendante ou stable :
par exemple, si L=[4,5,3,2,1,1,3,6,4,7], on obtient 'adddsaada'.
Je dois écrire une fonction max(L) qui, pour une int-liste L donnée de longueur n≥1, renvoie la longueur maximale d'une suite unimodulaire. (une suite est dite unimodulaire dans le cas où a0≤a1≤...≤ai≥ai+1≥...ad ) Par exemple : L=[1,2,3,2,1,3,6,3,6] L contient deux séquences unimodulaires : 1,2,3,2,1 de longueur 5 et 1,3,6,3 de longueur 4. La première a une longueur maximale, donc max(L) devrait retourner la valeur 5. Si vous avez des idées, partagez-les avec moi ! Merci.
Mon idée était d'abord de convertir la liste en une chaîne de caractères pour voir où elle est ascendante, descendante ou stable :
def ads(L):
def _ads(L):
for a, b in zip(L, L[1:]): #a:ascending d:descending s:stable
yield 'a' if a < b else ('s' if a == b else 'd')
ads= ''.join(_ads(L))
print(ads)
par exemple, si L=[4,5,3,2,1,1,3,6,4,7], on obtient 'adddsaada'.
A voir également:
- Problématique python
- Citizen code python avis - Accueil - Outils
- \R python ✓ - Forum Python
- Python est introuvable. exúcutez sans argument pour procúder ó l ✓ - Forum Python
- Python par la pratique : 101 exercices corrigés pdf - Forum Python
- Citizen code python solution - Forum Python
et ensuite extraire les séquences unimodulaires que j'ai et comparer leur longueur.