Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > fr.comp.lang.python > #4273
| From | Dominique <dominique.sextant@orange.fr.invalid> |
|---|---|
| Newsgroups | fr.comp.lang.python |
| Subject | Re: [SOLUTION] Tri de crêpes |
| Date | 2024-12-21 18:22 +0100 |
| Organization | A noiseless patient Spider |
| Message-ID | <vk6tg4$502a$1@dont-email.me> (permalink) |
| References | <vikoqt$3eo5p$1@dont-email.me> <vimqp4$1h59$1@cabale.usenet-fr.net> <vin3d6$1mos$1@cabale.usenet-fr.net> |
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
Back to fr.comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar
Les raisons de ma question de ce jour : panne de mémoire avec list et str Dominique <dominique.sextant@orange.fr.invalid> - 2024-12-02 17:55 +0100
Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str Olivier Miakinen <om+news@miakinen.net> - 2024-12-02 22:13 +0100
Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str Dominique <dominique.sextant@orange.fr.invalid> - 2024-12-03 07:06 +0100
Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str Olivier Miakinen <om+news@miakinen.net> - 2024-12-03 10:38 +0100
Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str Olivier Miakinen <om+news@miakinen.net> - 2024-12-02 22:48 +0100
Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str Olivier Miakinen <om+news@miakinen.net> - 2024-12-02 23:02 +0100
Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str Olivier Miakinen <om+news@miakinen.net> - 2024-12-03 10:29 +0100
Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str Dominique <dominique.sextant@orange.fr.invalid> - 2024-12-03 07:16 +0100
Re: Les raisons de ma question de ce jour : panne de mémoire avec list et str Olivier Miakinen <om+news@miakinen.net> - 2024-12-03 11:03 +0100
Tri de crêpes (was: Les raisons de ma question de ce jour : panne de mémoire avec list et str) Olivier Miakinen <om+news@miakinen.net> - 2024-12-03 12:41 +0100
Re: Tri de crêpes Olivier Miakinen <om+news@miakinen.net> - 2024-12-03 12:53 +0100
[SOLUTION] Tri de crêpes Olivier Miakinen <om+news@miakinen.net> - 2024-12-03 15:08 +0100
Re: [SOLUTION] Tri de crêpes Dominique <dominique.sextant@orange.fr.invalid> - 2024-12-03 18:07 +0100
Re: [SOLUTION] Tri de crêpes Olivier Miakinen <om+news@miakinen.net> - 2024-12-03 18:57 +0100
Re: [SOLUTION] Tri de crêpes Damien Wyart <damien.wyart@free.fr> - 2024-12-04 09:31 +0100
Re: [SOLUTION] Tri de crêpes Olivier Miakinen <om+news@miakinen.net> - 2024-12-04 12:16 +0100
Re: [SOLUTION] Tri de crêpes Damien Wyart <damien.wyart@free.fr> - 2024-12-04 13:09 +0100
Re: [SOLUTION] Tri de crêpes Olivier Miakinen <om+news@miakinen.net> - 2024-12-05 19:42 +0100
Signature d'une fonction (was: [SOLUTION] Tri de crêpes) Olivier Miakinen <om+news@miakinen.net> - 2024-12-05 19:56 +0100
Re: Signature d'une fonction Olivier Miakinen <om+news@miakinen.net> - 2024-12-06 00:34 +0100
Trouver l'index du plus grand élément dans une liste (was: [SOLUTION] Tri de crêpes) Olivier Miakinen <om+news@miakinen.net> - 2024-12-04 12:24 +0100
Re: [SOLUTION] Tri de crêpes Dominique <dominique.sextant@orange.fr.invalid> - 2024-12-21 18:22 +0100
Re: [SOLUTION] Tri de crêpes Dominique <dominique.sextant@orange.fr.invalid> - 2024-12-22 06:41 +0100
csiph-web