Deutsch   English   Français   Italiano  
<tk7v6u$gpc$1@gioia.aioe.org>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!news.mixmin.net!aioe.org!Z3dtOrGGIt5I0j0O5eDDkQ.user.46.165.242.91.POSTED!not-for-mail
From: Jacques Mathon <mathon.jacques@free.fr>
Newsgroups: fr.rec.jeux.enigmes
Subject: Re: F-Nim
Date: Sun, 6 Nov 2022 10:36:29 +0100
Organization: Aioe.org NNTP Server
Message-ID: <tk7v6u$gpc$1@gioia.aioe.org>
References: <titnme$31k8$1@cabale.usenet-fr.net>
 <tj0564$tm9$1@cabale.usenet-fr.net> <tk2qvq$vs$1@gioia.aioe.org>
 <tk63c3$1a60$1@cabale.usenet-fr.net> <tk649a$1aau$1@cabale.usenet-fr.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Info: gioia.aioe.org; logging-data="17196"; posting-host="Z3dtOrGGIt5I0j0O5eDDkQ.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.3.3
X-Notice: Filtered by postfilter v. 0.9.2
Content-Language: fr-FR
Bytes: 3042
Lines: 54

Le 05/11/2022 à 17:50, Olivier Miakinen a écrit :
> Le 05/11/2022 17:35, je répondais à Jacques Mathon :
>>
>> Au début du jeu, le programme demande de choisir un pourcentage. Supposons
>> que j'aie choisi 80. Alors le programme avant de jouer commence à tirer au
>> hasard un nombre entre 0 et 100. Si ce nombre est inférieur à 80, alors il
>> applique la stratégie optimale pour ce coup. Sinon, il joue un nombre tiré
>> au hasard entre 1 et le maximum permis (quand même plus petit que le tiers
>> du nombre restant si c'est possible).
>>
>>> Question subsidiaire: n est-il borné ?
>>
>> Non. La stratégie est valable quel que soit N. D'ailleurs Python ne limite
>> la taille des entiers que selon la taille mémoire disponible, ce qui fait
>> qu'en pratique il n'y a pas vraiment de limite pour une partie de durée
>> raisonnable.

OK !

> Je vais donner ci-dessous le programme en Python (presque complet).
> 
> 
> La partie du programme qui réalise la stratégie optimale est la fonction
> 'choix(have, maxi)' pour laquelle le paramètre 'have' est le nombre d'objets
> restant et le paramètre 'maxi' est le nombre maximum que le programme a le
> droit de retirer.
> 
> Voici cette fonction, dans laquelle j'ai remplacé les caractères non blancs
> de la fin par des '#' :
> =============================================================================
> def choix(have, maxi):
>      while True:
>          if have <= maxi:
>              return have
>          ## # # ## #
>          ##### # # #####
>              ## # # ## ###
>          #### ## #
> =============================================================================
> 
> Comme vous pouvez le voir, l'algorithme est *trés* court.

Vu que nous sommes sur frje, je considère ça comme une énigme à 
résoudre. :-)

Si j'ai bien compris la partie masquée permet de trouver le meilleur 
coup possible. Je vais chercher.

Juste pour être sûr...
Est-ce que chaque # cache un et un seul caractère ?

Amicalement
-- 
Jacques