Chat:Fr/2021-05-29
dwarfie: Automaton2000 : tu te met au golf maintenant ?
Automaton2000: yo tout l'monde ! automaton2000, automatonnn !
Baboom_59: Salut !
jdeveil: o/
Zorg1: \o
jdeveil: déjà debout Zorg1 ?
jdeveil: ou pas encore couché ?
Baboom_59: Je suis occupé à optimiser mon code parce que j'ai un nombre de simu ridicule sur mon MCTS. Est ce qu'il y'a un moyen de connaitre le temps de réponse à chaque tour ?
Zorg1: jdeveil : non ça va j'ai dormi ^^
BlaiseEbuth: Quelle drôle d'idée...
philRG: o/
philRG: comment supprimer 100 lignes de code avec une fonction d'éval
philRG: move_path = max(my_possible_paths, key=lambda p: score(p))
philRG: d'une dizaine de ligne lol
philRG: pour un branching d'environ 500 actions par tour
jdeveil: Top 10 silver à uTTT avec un MCTS python qui fait 80 simus par tour à peine...
jdeveil: il va falloir passer au cpp si je veux augmenter le nombre de simus :p
Zorg1: t'es en quoi ? python ?
jdeveil: oui
BlaiseEbuth: Oui. Son MCTS python est en python. Dingue non ?
jdeveil: :)
Zorg1: ah zut ^^
Zorg1: faudrait que j'arrête de lire un mot sur 2
BlaiseEbuth: μμμμμμ
Zorg1: c'est Automaton2000 qui m'a appris la technique
Automaton2000: ça veut dire que tu vas avoir du mal a voir comment faire
jdeveil: ah oui, ça peut être problématique p
jdeveil: :p
Zorg1: tkt Automaton2000 on va improviser
Automaton2000: je ne sais pas si le referee est en java et c#
BlaiseEbuth: Quelle horreur
jdeveil: ah 4ième juste derrière parduoin... mais le run n'est pas fini... suspens
BlaiseEbuth: Roules z'y dessus!
Zorg1: Java# le langage du futur :p
BlaiseEbuth: :scream:
philRG: c du bitboard ceci dit jdeveil
jdeveil: oui
jdeveil: une grille 9x9 bitboardé, plus la grille globale 3x3 bitboardée aussi
philRG: un petit coup de C++ et hop légende ;-)
jdeveil: https://www.codingame.com/replay/560797707
Zorg1: t'as pas bitboardé les 9 petites grilles séparemment ?
jdeveil: c'est bon je suis passé devant pardouin :p
jdeveil: top 3 à 99% du run
jdeveil: bon ba non, pas d'or :'(
BlaiseEbuth: Hésites pas à lui repasser deux trois fois dessus, histoire d'être sûr.
philRG: ah il y a un ticket to ride comme puzzle
jdeveil: 3ième silver... c'est déjà pas mal... je pensais pas arriver aussi haut avec un MCTS python :)
jdeveil: cool
philRG: pas mal Top 3 en silver
Zorg1: m'ouais 80 rollout, un peu etonné que ça ne revient pas à jouer random
BlaiseEbuth: C'est peut-être le cas
jdeveil: https://www.codingame.com/replay/560795734
jdeveil: :D
wyenat: virgin simulation / chad randint(0,8)
Zorg1: ^^
philRG: tout dépend ce qu'il y a dans le rollout c'est peut-être déjà pruné
jdeveil: même pas...
jdeveil: j'ai essayé pour voir, mais ça descendait énormément le nombre de simu (déjà pas bien haut)
jdeveil: donc j'ai laissé une sélection random
jdeveil: 80 simulations c'est en début de partie (après le premier tour)
jdeveil: en fin de partie, j'arrive à presque 2000
jdeveil: (en fonction des parties)
jdeveil: (il y en a qui se terminent plus tôt que d'autres :p )
Zorg1: enfin c'est possible de passer or UTTT en python
jdeveil: oui mais pas avec un MCTS si ?
wyenat: Y a-t-il un moyen de désactiver l'animation graphique ? C'est trop long pour pouvoir tester tous les corners case correctement
wyenat: nvm ya un x10 hihi
Zorg1: heu .. dans quel contexte ?
BlaiseEbuth: Un contexte ? Ici ?
Zorg1: bah oui t'as pas compris que c'est l'énorme pile de contextes jamais dépilés qui fait planter le site de temps en temps ?
BlaiseEbuth: Surtout la pile de con textes...
wyenat: Sinon le nougat c'est plutôt mmmh ou plutôt pas mmmh pour vous
jdeveil: non ici on mange du turtle :)
Zorg1: mais Automaton2000 est un peu allergique
Automaton2000: je vois pas trop comment je peux savoir si un point est dans un autre langage
pardouin: jdeveil si tu pouvais me push plutôt que me rouler dessus :D
pardouin: j'ai juste une heuristique sur uttt, j'avais essayé MC et MCTS mais nombre de simu trop bas donc ça donnait rien ^^"
pardouin: je vais le refaire en minimax je pense
pardouin: ou bien retenter MC et MCTS mais en faisant des modifications en place plutôt que copier l'état de jeu à chaque fois, bien trop lent
philRG: préservez la couche d'ozone faites des heuristiques :-D
BlaiseEbuth: Moi j'aime bien la couche d'ozone. Faut en profiter, dans 20 ans y'en aura plus.
Zorg1: toute façon la couche d'ozone c'est devenu une fête commerciale
philRG: sur dice duel il y a environ 500 actions par tour
philRG: plus qu'au jeu d'échec
philRG: comment mettre en place une simulation?
Zorg1: joli branching
philRG: je vais essayer de tuner ma fonction d'éval, j'ai vaporisé ma forêt d'if/else plutôt content. Et peut-être jeter un oeil sur le bitboarding d'othello
philRG: purée 5000 codes liés à othello sur github
philRG: et 10 codes avec bitboard ça réduit bien le biniou :-)
philRG: les versions c++ me plaisent bien sur les bitboard
nicola: Zorg1, c’est comme la couche confiance.
Bon[]Crayon: Salut tout le monde :ghost:
Bon[]Crayon: Automaton2000 Salutations.
Automaton2000: donc il peut y avoir beaucoup de temps pour avoir un peu de mal avec le mode d'édition de l'ide ...
Bon[]Crayon: Automaton2000 Quel grognon que tu fais !
Automaton2000: bah c'est parce que j'ai pas du tout
jdeveil: pardouin: je vais essayer de pas copier l'état lors de la simu, c'est vrai que c'est du temps de perdu... Merci,
Zorg1: après y a peut être aussi à gratter dans la gestion de ton arbre
jdeveil: c'est clair, elle est full random, sans prune rien
jdeveil: juste une UCB pour la sélection du noeud à jouer (sans tuning non plus)
jdeveil: bon je gagne un peu en nombre de simu, mais c'est pas énorme...
Zorg1: t'as la sélection des coups (surtout au rollout) qui peut être couteuse
jdeveil: random :p
jdeveil: sélection des coups, tu entends la sélection du rollout ou le calcul des coups possibles ?
Zorg1: le calcul des coups possibles, pardon
jdeveil: ah oui ça c'est pas impossible...
jdeveil: Surout que je crée une instance de Move pour chacun des moves possibles
jdeveil: plutôt qu'un pauvre tuple
jdeveil: ça m'oblige à faire plusieurs transformations probablement inutiles
jdeveil: vais l'enlever pour voir aussi
Zorg1: bah c'est une fonction que t'appelles bcp en fait, ça doit être rentable de l'optimiser
jdeveil: oups, il faut penser à recoder l'impression du move quand même :p
Thyl: Sokoban ça à l'air trop bien
jdeveil: trouver les 1 sur un entier en python, vous avez une méthode plus rapide (en temps CPU) qu'une conversion int->string puis parcours de la string ?
jdeveil: c'est pour trouver les 0 plutôt... pardon
jdeveil: parcours index du nombre binaire avec un mask sur le bitboard peut être ?
Thyl: tu veux trouver le nombre de bit apparent ???
Zorg1: t'as un nombre avec les 81 positions ?
jdeveil: oui
jdeveil: oui Zorg1, Thyl je sais pas
jdeveil: je veux les coordonnées de mes moves
Thyl: a ok
Thyl: ben oui
Thyl: tu est obligé d'itérer
Thyl: à part
Thyl: solution plus simple
dwarfie: eh eh ... tellement simple en c++ :yum:
Thyl: tu crée une list
Thyl: et tu stock tout les coups jouables que tu joues
jdeveil: Thyl: j'ai déjà ça : [(n//9,n%9) for n,v in enumerate(f'{voids:081b}'[::-1]) if v != '1']
jdeveil: le voids c'est un long long long long de mes coups possibles.
jdeveil: j'vais tenter sans la convertion en string
Thyl: non
Thyl: t'as pas compris
jdeveil: ah zut... explique :p
Thyl: quant tu parcourt ta grille pour trouver des coups faisables
Thyl: quand
Thyl: *
Thyl: et ben là
Thyl: à coté tu te gardes une list
Thyl: et tu parcourt une fois
jdeveil: ben c'est là que je la parcours...
Thyl: tu représente comment
Thyl: 1 toi
Thyl: 0 l'autre
jdeveil: avant ça c'est juste un: voids = boardX | boardO
Thyl: ok
jdeveil: 1 moi dans boardX, 1 l'autre dans boardO
jdeveil: (ou l'inverse je sais plus)
Thyl: d'accord
Thyl: je comprend
Thyl: pardon
Zorg1: bah en fait moi j'étais parti sur des grilles 3x3, donc 512 configurations possibles et j'ai une table
dwarfie: pourquoi garder une liste ...toi c'est un bitboard , lui c'est un bitboard, les coups possibles c'est un bitboard aussi ;)
Thyl: oui ça à lair pas mal
jdeveil: je commence par supprimer la convertion: facile.
jdeveil: dwarfie: tu peux m'expliquer ce que tu veux dire ? je vois bien que mes coups possibles sont un bitboard... mais comment je le réutilise dans mon MCTS pour déterminer où jouer ?
dwarfie: en recuperant les bits à 1 ...
dwarfie: si poss est ton bitboard ,
dwarfie: tu peut faire une boucle (4 facons differentes en tete) pour ca
dwarfie: plus ou moins optimales
dwarfie: genre :
dwarfie: while(poss > 0):
dwarfie: if ( poss & 1 ) == 1: ajout du coups
dwarfie: poss >>= 1
jdeveil: ça dans la fonction qui retourne les legal_moves ?
dwarfie: le coup etant une variable i que tu incremente a chaque tour (que j'ai oublié dans l'exempls
jdeveil: ouaip ok. C'est ce que je fais alors :)
jdeveil: je pensais que tu voulais réutiliser le botboard des coups directement dans la fonction rollout_policy
dwarfie: l'astuce de ma version , c'est que ca fait pas les 64 bits si le dernier 1 est en pos 32 par exemple :D
Zorg1: bah ça revient à parcourir ta chaîne de "0" et de "1" mais tu le fais avec des décalages et des mask
dwarfie: la question etait pas de pas passer par une string ? ou j'ai mal suivi ?
Zorg1: si mais je dis que c'est équivalent en + rapide ^^
dwarfie: ouf ... je sous pas encore trop saoul ... Automaton2000 , une tournée de plus ;)
Automaton2000: il y a quand meme un peu
jdeveil: le masque évite peut être la conversion
dwarfie: Automaton2000 : juge pas mon alcoolhémie s'il te plait
Automaton2000: c'était quand même un paquet de trucs qui servent à rien
Zorg1: jdeveil : oui
jdeveil: à voir lequel est le plus rapide en CPU :p
jdeveil: presque fini... j'vais tenter ;)
Zorg1: après je trouve ça bizarre de stocker les 81 positions dans un entier, mais bon
jdeveil: tu aurais fait comment ?
jdeveil: 9 grilles 3x3 dans 9 entiers ?
dwarfie: je stocke 9 fois 18 positions moi ...
jdeveil: enfin 10 pour avoir la grille globale
jdeveil: ok
BlaiseEbuth: Moi je stockes rien
dwarfie: ou 18 fois 9 ... je sais plus trop ;)
Zorg1: oui j'ai fais comme ça plein de petites grilles
jdeveil: ba c'est presque pareil... à part que mes 9 entiers, ils sont les uns derrière les autres :p
BlaiseEbuth: Bah nan. C'est plus à copier
dwarfie: et surtout , c'est largement trop grand pour un entier 64bits ...
Zorg1: oui t'as de l'overhead pour gérer ton entier de 81 bits
BlaiseEbuth: Ouai. Mais même sans overhead 81 bits rentrent pas dans 64... :p
jdeveil: certes
jdeveil: en cpp je serais coincé et obligé de passer en 64 bits
Zorg1: oui mais python te gère ça de façon transparente tes 81 bits
jdeveil: oui
jdeveil: pour ça que je me suis pas posé de question
Zorg1: après faut juste avoir idée de ce que ça coute
jdeveil: j'ai foncé :)
**dwarfie tend un "mal" à Zorg1
Zorg1: j'en ai marre d'avoir de la propagande à chaque fois que je parle de python :p
jdeveil: pourquoi tant de haine envers python ?
nicola: Parce que c’est la mode de taper dessus.
Zorg1: bah tu prends un sondage à la con sur l'utilisation des langages, et c'est la mode de taper sur les 5 langages en tête ^^
Zorg1: après ça permet de faire de l'élitisme à pas cher
dwarfie: parce que c'est le seul langage ou les utilisateurs sont incapables de voir les defauts ...? :thinking:
Zorg1: et ? moi quand j'étais jeune je trouvais bien le Basic trop cool
Zorg1: alors que bon maintenant ...
Zorg1: :D
dwarfie: ben c'est depassé mais toujours aussi cool ... tant qu'il y a pas visual devant ;)
Zorg1: oui enfin Basic c'est du Fortran simplifié à la base
dwarfie: autoit , gambas , j'ai joué un peu avec , mais ca reste locomotive qui reste dans mon coeur :rofl:
dwarfie: gfa basic , par contre , je l'oublie , j'ai pas un bon souvenir
BlaiseEbuth: Parce que c'est python.
BlaiseEbuth: Python c'est un boa con stricteur.
BlaiseEbuth: Un serpent à sornettes.
BlaiseEbuth: Un naze pic.
BlaiseEbuth: Un âne, un con, da!
BlaiseEbuth: Un coule oeuvre :rofl:
dwarfie: j'allais dire "mais pas une cool oeuvre" :D
BlaiseEbuth: Aussi :p
jdeveil: sinon il y en a qui ont de vrais arguments ?
BlaiseEbuth: Ouai. C'est nul
dwarfie: pas de vrais types , portées des variables hasardeuses , ...
BlaiseEbuth: int argc, char** argv
BlaiseEbuth: Mes arguments ^
jdeveil: hasardeuse ?
BlaiseEbuth: scope.random()
Zorg1: tu tires la variables au sort
Zorg1: ça doit être pratique pour coder un MC :thinking:
Zorg1: (ça me rappelle qu'il y avait un langage connu pour avoir un 'random jump')
BlaiseEbuth: 'jump'?
Zorg1: goto random si tu préfères
BlaiseEbuth: oh
Zorg1: après on m'avait parlé de ça à propos de 'Simula' (l'ancêtre de Smalltalk et tout le bazar objet) mais jamais trouvé de trucs précis, va savoir pê une légende urbaine
Zorg1: mais j'aime bien le concept, envie de développer ça en java, et de créer une classe Troll pour l'y mettre
BlaiseEbuth: Tu le laisses dans le namespace global, ça sera pareil.
BlaiseEbuth: :speak_no_evil:
Zorg1: l'essentiel c'est d'afficher une stacktrace de 10 mètres de long
Zorg1: ça fait sérieux
Zorg1: surtout avec des "Caused by :" imbriqué
BlaiseEbuth: Avec "Caused by: A java expert" à la racine
Zorg1: le mieux c'est l'enrobage des erreurs SQL par les 36 couches hibernates
BlaiseEbuth: Le film avec DeDunès ?
BlaiseEbuth: *DeFunès
Zorg1: ouaip c'est Stanislas Lefort qui fait DBA
Zorg1: t1 je me rappelle du nom de ce personnage ...
**BlaiseEbuth à googlé...
Zorg1: (oui je sais c'est pas dans Hibernatus)
BlaiseEbuth: *a
Zorg1: mais y a plus balaise que le Java Expert ou l'architecte Java : le Java avangelist ^^
Zorg1: bon j'en entends plus trop parler, ils ont du se calmer avec ...
Zorg1: *Java evangelist
BlaiseEbuth: C'est un mix entre un evengeliste et un avanger ?
BlaiseEbuth: Ah
BlaiseEbuth: :3
BlaiseEbuth: Ouai. Le dernier il est allé évangéliser une tribu sur une île et il s'est fait butter. Des gens intelligents.
Zorg1: ah l'île des Sentinelles
BlaiseEbuth: Ouai.
Zorg1: gaffe j'ai entendu dire qu'ils font du python
BlaiseEbuth: :scream:
BlaiseEbuth: Moi qui pensai que la corruption ne les avait pas atteint... :(
Zorg1: c'est une connerie le mythe du bon sauvage :p
Zorg1: pas parce qu'ils buttent des religions qu'ils n'ont pas de défaut
Zorg1: *religieux
BlaiseEbuth: Hmm... Je suis sûr que c'est les mecs qui étaient aller les voir début XXeme qui les ont pourri.
Zorg1: le fameux patient zéro
Zorg1: idée : un survival où t'es le dernier programmeur C entouré d'une foule d'infectés qui font du Java ou du Python ...
Zorg1: évidemment ils veulent te bouffer le cerveau
Zorg1: pas sûr que ça marche trop de trucs de Zombies :thinking:
Zorg1: ou alors un truc façon "invasion de profanateurs de tombeaux"
BlaiseEbuth: Une des pires traductions de titre de l'histoire... -_-
BlaiseEbuth: C'est sépulture btw
Zorg1: oui le concept de "Bodysnatcher" c'est un peu difficile à traduire
Zorg1: et "voleurs de cadavre" ça faisait pas terrible je suppose
Zorg1: ah oui sépulture
BlaiseEbuth: Bah 'corps' déjà
Zorg1: oui la traduction est bcp trop littérale, l'aspect sacrilège est vraiment pas important
Zorg1: et y a pas de morts en plus
BlaiseEbuth: https://imgur.com/a/Zq0Bubn
dwarfie: c'etait python 2 a l'epoque ... et python 2 en est mort d'avoir essayé ;)
Bon[]Crayon: Est-ce qu'une aimable personne pourrait me donner l'adresse du site où l'on peut voir les puzzles cg résolus par utilisateur et par langage ?
BlaiseEbuth: Si la personne est pas aimable tu veux pas le lien ?
dwarfie: https://chadok.info/codingame/
Bon[]Crayon: Bonne remarque.
Bon[]Crayon: Merci dwarfie.
BlaiseEbuth: Tu es aimable dwarfie
**dwarfie infirme la confirmation de l'affirmation ... ou au contraire ... :D
Zorg1: :thinking:
dwarfie: comme avait dit un politique a l'epoque "je ne suis ni pour ni contre ... bien au contraire" :rofl:
Zorg1: aussi demander son avis à un politique ...
BlaiseEbuth: Nous sommes sur un plateau montant.
Zorg1: la route est droite mais la pente est forte
BlaiseEbuth: On vit dans un pays où le président de la république fait des vidéos avec des youtubeurs...
dwarfie: en meme temps , il avait rien de mieux a foutre ... que du pire qui aurait fait raler encore plus ...
BlaiseEbuth: On est tellement profond que j'arrive pas à déterminer qui, de macron ou de m&c s'est un peu plus enfoncé en s'associant à l'autre... :thinking:
dwarfie: celui qui a l'empreinte des chaussures de l'autre sur les epaules ? ;)
Zorg1: les deux gars qui se battent en se noyant ?
BlaiseEbuth: Ceux qui chantaient "j'ai mis mon sexe dans un tupperware"
Zorg1: après bon entre les youtubeurs et Macron, faut voir qu'ils ont partagé le semi remorque pour trimballer leurs égo
Zorg1: ça réduit l'impact carbone
slims78200: moi j'ai mis mon sexe dans une boite d'allumette
dwarfie: la on donne plutot dans le camion minier : https://www.automobile-propre.com/wp-content/uploads/2020/02/APA0212_bCamionMineH2-730x487.jpg
Zorg1: domage pas de bonhomme pour donner l'échelle
Zorg1: mais oui c'est monstrueux ces trucs là
BlaiseEbuth: Merci slims78200... C'est édifiant
dwarfie: ouais , juste la cabine
slims78200: et terrifiant à la fois
dwarfie: mais celui la est electrique ... "1.000 kWh de capacité pour le plus gros camion minier électrique" ... mais soit disant ecolo :D
BlaiseEbuth: Oui oui on connait. Les véhicules électriques polluent pas. Sauf pour les pessimistes
dwarfie: pas grave ... les pas pessimistes , on les balancera sur mars de toutes facons ;)
Zorg1: et l'extraction minière c'est propre
BlaiseEbuth: Avec les pailles en carton dans l'c**
Zorg1: ah oui "Elon Musk va sauver l'humanité avec sa Tesla et sa fusée électrique" ?
BlaiseEbuth: Bah se barrer c'est déjà un petit geste...
Zorg1: tkt il va se cloner, on a tellement besoin de lui
Zorg1: sinon t'avais le concept de la fusée propulsée avec des explosions nucléaires, mais ça n'a interessé personne (https://fr.wikipedia.org/wiki/Projet_Orion)
BlaiseEbuth: Ouai, ça devait être confortable pour les occupants
Zorg1: "tkt le blindage te protège, on a simulé ça avec python"
BlaiseEbuth: Est-ce qu'on peut dire que l'histoire d'Elon c'est le Musk lore ?
Zorg1: :thumbsup:
WhatTrickeryIsThis: vas y tu peut
WhatTrickeryIsThis: t'es bon
BlaiseEbuth: Wé!
BlaiseEbuth: Tiens. dbdr a ouvert un salon de massage ?
BlaiseEbuth: https://cg.spdns.eu/wiki/Main_Page
Zorg1: ha tiens ...
Zorg1: le wiki ouvert à tous vents de dbdr ...
BlaiseEbuth: Quelle idée aussi...
Zorg1: et encore c'est la partie visible, tu pioches quelques "Random page" tu comprends vite
Zorg1: en plus il rame son bazae
Zorg1: *bazar
BlaiseEbuth: J'ai retrouvé LA fameuse conversation sur Musk etc... J'me marre :3
Zorg1: ah que tu es un pessimiste ?
BlaiseEbuth: Entre autre. ^^
BlaiseEbuth: Mais c'est une anthologie ce truc.
BlaiseEbuth: https://cg.spdns.eu/wiki/Chat:Fr/2020-09-13
3141948: Ah je comprends un peu les difficultés de langage d'automaton maintenant 😂
BlaiseEbuth: Pfiou. J'ai gagné un an d'espérance de vie, mais j'ai du me péter une côte en rigolant.
Zorg1: c'est lardé de trolls cette historique
Zorg1: " grace aux cerveau de elon musk on y arrivera" c'est bô
BlaiseEbuth: Le "à cause des boomers" est savoureux.
Zorg1: toute façon c'est les boomers qui nous ont foutu dehors le jardin d'Eden
BlaiseEbuth: Bien vrai. Avec l'aide de python. :rage:
dwarfie: ouch ... t'as fait pété l'historique ... :D
BlaiseEbuth: Faut rire de temps en temps.
BlaiseEbuth: Ok. Windaube viens de laisser mon programme buggé écrire un fichier addressé "" en chemin absolu... Iléou le fichier ? Oo
nicola: Dans ton cystème de fichiers.
Zorg1: celui de ton haut Esse ?
didyme: çalut la kompanie
Zorg1: o/
Zorg1: c'est calme
Zorg1: ils sont tous partis jouer au Jokari avec des grenades on dirait
Zorg1: Automaton2000 t'es toujours fidèle au poste ?
Automaton2000: du coup tu fais du python ?
Zorg1: oui ... bon ... alors ... j'avais pas trop le choix Automaton2000 ... pi c'est pour un projet innovant quoi ... on a besoin des données produites ...
Automaton2000: je n'ai pas trouvé de solution mathématique, d'où mes fonctions récursives. j'en ai 2
Zorg1: :thinking:
pardouin: j'ai trouvé ce truc par hasard: https://www.codingame.com/ide/puzzle/cistercian-numerals
pardouin: je l'ai fait en me disant que ça donnerait sans doute pas d'xp (puzzle supprimé) mais en fait ça en donne :)
-Cile-: bon et sinon, qui a réussi le puzzle de la semaine ?
pardouin: <-
-Cile-: je sèche sur celui-là
pardouin: tu as essayé quoi ?
-Cile-: pas grand chose, j'ai essayé de voir sur papier comment je m'y prendrais :/
pardouin: tu connais le pb du rendu de monnaie ?
-Cile-: mmm... non
-Cile-: ou alors pas sous ce nom...
pardouin: essaye de résoudre ça d'abord: https://leetcode.com/problems/coin-change/
pardouin: ensuite je te conseille: https://www.codingame.com/training/medium/rod-cutting-problem
Zorg1: le problème emblématique de la programmation dynamique, le rendu de monnaie
pardouin: et: https://www.codingame.com/training/medium/goro-want-chocolate
-Cile-: merci beaucoup, je vais tenter tout ça
pardouin: et une fois que tu auras bien capté le genre de démarche, le POTW te paraîtra plus abordable je pense
-Cile-: (suis sur la page wiki du rendu de monnaie
pardouin: (et ça te servira souvent donc utile)
-Cile-: merci encore :)
Zorg1: tu as ausi les "The Grand Festival" et le fameux "Resistance" qui n'est pas trop compliqué si t'as compris le truc
-Cile-: je note
**dwarfie en mode kamikaze ....
dwarfie: banzai sur clobber ...
dwarfie: ca risque pas grand chose vu le peu de monde :D
Zorg1: c'est vrai qu'il n'y a pas foule
dwarfie: bon , laminage de la wood 2 ... plus qu'a patienter pour la fin du run ... a 100% de victoires :D
Zorg1: la wood2 je crois que quasiment tout le monde des en random
Zorg1: *est en random
dwarfie: le boss est assez au pour que j'en fasse pas passer ... je croise les doigts
dwarfie: arf , toujours pas d'emoji de doigts croisés
pardouin: :hand_with_index_and_middle_finger_crossed_tone5:
pardouin: :(
darkhorse64: si on bat le boss clobber avec un random, c'est que j'ai mal bossé. MM profondeur 4-10, ça doit qd même pas jouer trop mal
EbbDrop: \leave
darkhorse64: gg dwarfie
dwarfie: merci darkhorse64 ... apres cette courte pause , j'ai plus qu'a retourner voir pourquoi mon breakthrough joue si mal :D
dwarfie: ah mais c'est que ca s'en sort aussi pas mal en wood 1 mon truc :D
Zorg1: j'ai pas dit que le boss de la wood2 joue en random
darkhorse64: profondeur de calcul, une combinaison gagnante prend souvent 10-12 coups
**dwarfie peut esperer le top 10 pour un peu
darkhorse64: j'avais compris mais qu'il se fasse battre par des randoms, ça me fait mal
Zorg1: super il n'y a que des C/C++/Rust en wood1
dwarfie: bon , ca va etre le 3eme multi ou je suis devant dbdr ... ca s'arrose ca :D
BrainSolver: :champagne: gg
dwarfie: :champagne_glass: :tumbler_glass: :wine_glass: :beers: :cocktail: :tropical_drink: :sake: :milk:
BrainSolver: ...dégrisement
dwarfie: le verre de lait est la pour remettre les idées en place ... :nauseated_face:
dwarfie: :D
dwarfie: humm ... pas motivé pour faire checkers ce soir ... ca attendra un peu ...
darkhorse64: attention, tu vas avoir un retrait de permis de conduite
darkhorse64: de bot
dwarfie: bah , de toutes facons , vu le nombre de fois ou je me suis pris du jus et que je suis encore en vie ... c'est un fait que je suis un mauvais conducteur :D
pardouin: :citrate_de_betaine:
pardouin: marche pas :(
pardouin: je me suis fait chier à faire un truc plus rapide que le bruteforce pour ce truc: https://www.codingame.com/ide/puzzle/skylines
pardouin: parce que 5000*5000 en python c'est tendu
pardouin: et en fait le bruteforce passait :'(
3141948: dwarfie: mince fait gaffe ton employeur t'a-t'il fait passer toutes les habilitations électriques utiles?
3141948: Qui a gagné la LDC ? Encore endormi dans le canapé 😒
Zorg1: ldc ?
Zorg1: ah ligue des champions, le foot
Remiavecuni: pardoin ça fait de l'exercice ^^
dwarfie: la ligue des champions ... :thinking: ... comment dire ... rien a foot ...
Zorg1: o/
MaximeGaber: Pourquoi tout le monde code ne python ? :(
Bingo_Pro: Python est le meuilleur
Zorg1: MaximeGaber : bah c'est le langage qu'on fait apprendre aux nouveaux je suppose
RCT: ..