Re: [SOLUTION] Tri de crêpes

Liste des GroupesRevenir à fcl python 
Sujet : Re: [SOLUTION] Tri de crêpes
De : dominique.sextant (at) *nospam* orange.fr.invalid (Dominique)
Groupes : fr.comp.lang.python
Date : 21. Dec 2024, 18:22:12
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <vk6tg4$502a$1@dont-email.me>
References : 1 2 3
User-Agent : Mozilla Thunderbird
Le 03/12/2024 à 15:08, Olivier Miakinen a écrit :
Solution du problème, ne pas lire tant que tu veux encore chercher.
 En revanche, toute proposition d'amélioration est la bienvenue.
Ta solution de tri des crêpes est très intéressante et part du postulat que tu n'as qu'un seul tas. Je n'ai pas regardé la solution du livre « 15 énigmes ludiques pour Python » mais l'énoncé ne paraît pas dire qu'on ne doit travailler que sur un seul tas.
Dans ma solution, j'ai, à un moment donné , 3 tas :
crepe qui correspond aux crêpes non encore triées,
result qui correspond au tas de crêpes qui se trie progressivement
et temp qui est un tas temporaire duquel je retire la crêpe max que je mets dans résult. Pour simplifier, je retire cette crêpe max avec un bête remove dans crepe.
Dans la vraie vie, on peut imaginer que le cuistot a bien 3 assiettes devant lui et une seule spatule.
Accessoirement, j'ai simplifié en ayant une liste d'entiers dans crepe et pas des strings.
======================================================
import random
result=list()
crepe=list()
nb=int(input('Nombre de crêpes '))
#Calcul de la taille des crêpes de 0 à 9
crepes=str(random.randint(9**nb,10**nb))
crepe=[int(x) for x in crepes]
print(crepes)
print()
fin=False
while fin==False:
     #Je prends la crêpe la plus garnde ainsi que la pile au--dessus
     temp=crepe[0:crepe.index(max(crepe))+1]
     temp.reverse()
     crepe.remove(max(temp))
     #J'ajoute à la pile reclassée (result) la crêpe la plus grande
     result.insert(0,temp[0])
     #Je retire cette crêpe la plus grande de la pile initiale
     temp=temp[1:]
     #temp.reverse()
     print(crepe, '|',result)
     if crepe==[]:
         fin=True
======================================================
Avec 10 crêpes, j'ai ce résultat :
Nombre de crêpes 10
9686246886
[6, 8, 6, 2, 4, 6, 8, 8, 6] | [9]
[6, 6, 2, 4, 6, 8, 8, 6] | [8, 9]
[6, 6, 2, 4, 6, 8, 6] | [8, 8, 9]
[6, 6, 2, 4, 6, 6] | [8, 8, 8, 9]
[6, 2, 4, 6, 6] | [6, 8, 8, 8, 9]
[2, 4, 6, 6] | [6, 6, 8, 8, 8, 9]
[2, 4, 6] | [6, 6, 6, 8, 8, 8, 9]
[2, 4] | [6, 6, 6, 6, 8, 8, 8, 9]
[2] | [4, 6, 6, 6, 6, 8, 8, 8, 9]
[] | [2, 4, 6, 6, 6, 6, 8, 8, 8, 9]
--
Dominique
Esto quod es

Date Sujet#  Auteur
2 Dec 24 * Les raisons de ma question de ce jour : panne de mémoire avec list et str24Dominique
2 Dec 24 +* Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str3Olivier Miakinen
3 Dec 24 i`* Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str2Dominique
3 Dec 24 i `- Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str1Olivier Miakinen
2 Dec 24 +* Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str5Olivier Miakinen
2 Dec 24 i+* Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str2Olivier Miakinen
3 Dec 24 ii`- Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str1Olivier Miakinen
3 Dec 24 i`* Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str2Dominique
3 Dec 24 i `- Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str1Olivier Miakinen
3 Dec 24 `* Tri de crêpes (was: Les raisons de ma question de ce jour : panne de mémoire avec list et str)15Olivier Miakinen
3 Dec 24  +- Re: Tri de crêpes1Olivier Miakinen
3 Dec 24  `* [SOLUTION] Tri de crêpes13Olivier Miakinen
3 Dec 24   +* Re: [SOLUTION] Tri de crêpes2Dominique
3 Dec 24   i`- Re: [SOLUTION] Tri de crêpes1Olivier Miakinen
4 Dec 24   +* Re: [SOLUTION] Tri de crêpes7Damien Wyart
4 Dec 24   i`* Re: [SOLUTION] Tri de crêpes6Olivier Miakinen
4 Dec 24   i `* Re: [SOLUTION] Tri de crêpes5Damien Wyart
5 Dec 24   i  `* Re: [SOLUTION] Tri de crêpes4Olivier Miakinen
5 Dec 24   i   `* Signature d'une fonction (was: [SOLUTION] Tri de crêpes)3Olivier Miakinen
5 Dec 24   i    `* Re: Signature d'une fonction (was: [SOLUTION] Tri de crêpes)2Stefan Ram
6 Dec 24   i     `- Re: Signature d'une fonction1Olivier Miakinen
4 Dec 24   +- Trouver l'index du plus grand élément dans une liste (was: [SOLUTION] Tri de crêpes)1Olivier Miakinen
21 Dec 24   +- Re: [SOLUTION] Tri de crêpes1Dominique
22 Dec 24   `- Re: [SOLUTION] Tri de crêpes1Dominique

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal