Chat:Fr/2021-03-03
Bob: Automaton2000, AutomatonNN, DEBOUUUUUT
Automaton2000: je croyais que c'était un problème de type
AutomatonNN: ouais mais je suis pas trop compliqué de te demander du coup que je suis pas super mal bourrin en tr
philRG: o/ Automaton2000, AutomatonNN et amis affiliés
AutomatonNN: ouais c'est comme ça que tu fais de la connerie
Automaton2000: et meme si tu peux faire un ag ?
philRG: AutomatonNN à qui le dis-tu! :-D
AutomatonNN: oui
dwarfie: Automaton2000 : on dit un probleme de personne ... pas de type ...
Automaton2000: mais lui il est pas encore ouverte
dwarfie: Automaton2000 : cela ne nous ... regarde pas ...
Automaton2000: le lien du puzzle ?
dwarfie: Automaton2000 : https://www.lavalleedestortues.fr/
Automaton2000: c'est juste pour dire que je fais un peu le bordel
dwarfie: Automaton2000 : fait plutot des tortues ...
Automaton2000: c'est juste que quand tu te fais pas chier
Bon[]Crayon: Bonjour tou tle monde
Bon[]Crayon: automaton2000
Automaton2000: ok, je crois que j'ai compris
Bon[]Crayon: automatonnn
AutomatonNN: oui ^^
Bon[]Crayon: Automaton2000 Tu me surprends.
Automaton2000: pas sur que les deux autres
DimSim: Je n'avais même pas vu qu'il y avait un chat français ici :smile:. Bonjour à tous !
Bon[]Crayon: Salut
DimSim: Je ne suis sur le site que depuis quelques jours mais je ne peux déjà plus m'en passer.
Bon[]Crayon: Est-ce que l'abus de code peut nuire à la santé ?
Bob: ca depend de la qualite du code
Bob: sauf si c'est du PHP, et la la reponse est oui de toute facon
**dwarfie ne reagira meme pas ... il est en panne de chiantos ...
Zorg1: bonjour tout le monde ainsi que les bots Automaton2000 & AutomatonNN
Automaton2000: si tu veux pas savoir ce que c'est
AutomatonNN: Coder sur codingame ?
Zorg1: AutomatonNN : oui y a des gens bizarres
AutomatonNN: oui je connais pas trop le problème de comment tu peux pas te pourrir le prochain contest :p
Bon[]Crayon: o/
Zorg1: effectivement AutomatonNN, pour ce faire je vais le ragequitter de façon préventive
AutomatonNN: oui je suis tout seul avec un mal pour la pluie AutomatonNN
Zorg1: \o
Sakisan: AutomatonNN c'est le rigolo et Automaton2000 c'est le pessimiste ?
Automaton2000: ou je peux faire un minimax
AutomatonNN: voilà t'as testé le contest soit tu n'es pas sur que tu peux pas t'en sortir c'est pas trop compliqu
Bon[]Crayon: AutomatonNN le sucre :)
AutomatonNN: gg
Bob: o/ Zorg1
Bon[]Crayon: slt
Bon[]Crayon: :ok_hand:
Bob: ca va ca va
Zorg1: salut Bob Bon[]Crayon ^^
JBM: comment es ton comment es ton
Bob: il est en pas contest de pas contest
Azy_one: Bonjour, je suis nouveau sur coding Games, je viens de réaliser mon troisième puzzle (Températures) mais il ne me le valide seulement à 90% et "5526 alone" en est la raison mais je ne comprends pas trop de quoi il en retourne :/ quelqu'un pourrait m'éclairer ?
Bon[]Crayon: Est-ce que ton code est capable de gérer une seule température ?
Azy_one: Oui, je pense que c'est le cas mais je débute le js donc je n'en mettrai pas ma main à couper :sweat_smile:
Azy_one: en tout cas "-273 alone" est validé :/
Bon[]Crayon: Selon l'énoncé, 5526 est la température la élevée possible.
Azy_one: Alors update, je viens de réussir, mais je ne comprends moi même et effectivement je pense que mon code ne devait pas gérer un seul température :slight_smile:
Azy_one: je ne comprends pas *
Bob: bah tu devais avoir un bug
Azy_one: En tout cas merci pour l'aide :)
Bon[]Crayon: Peut-être l'initialisation?
Azy_one: Alors j'ai seulement rajouter un if(n == 1){}
Azy_one: result = t
Bon[]Crayon: ok
Bon[]Crayon: C'est l’initialisation de result qui doit être le problème.
Bon[]Crayon: Dans l'énoncé, il est précisé que les températures sont comprises entre -273 et 5526.
Azy_one: Je sais pas si on parle de la même chose car étant encore très débutant je ne suis pas sûre de tout comprendre, mais au début de mon programme j'ai créer 3 var (max = 5526, min = -273 et result = 0)
Bon[]Crayon: Il faut que tu réfléchisses à la logique de ton code sur les valeurs extrêmes.
Azy_one: D'accord je vais continué à réfléchir à mon problème :)
Bon[]Crayon: Avec rersult = 0, le code fonction sur -273 mais pas sur 5526.
Bon[]Crayon: ok bonne réflexion
Azy_one: est-il possible de partager un programme ?
Peponne: salut
Azy_one: Bonjour
tekki: on dit bonjour AutomaotnNN
pardouin: (oui tu peux partager un programme en le copiant collant ici si c'est un puzzle facile mais à éviter pour des puzzles plus compliqués)
tekki: on dit bonjour AutomatonNN
AutomatonNN: oui mais j'ai pas trouvé de code comme ca je suis pas sur que c'etait la première fois
Bob: je suis sur que tu sais dire bonjour AutomatonNN
AutomatonNN: oui
Bob: plus qu'Automaton2000 ne sait dire tortue en tout cas
Automaton2000: bon, je dois y aller
Bob: c'est ca Automaton2000 fuis comme le lache que tu es
Automaton2000: alors qu'il suffit de faire un truc pareil
Bob: salut
DiDzTM: Je peux vous poser une question? ^^
DiDzTM: JEecrois que c'est un non ^^
nicola: Tu viens de le faire. :p
DiDzTM: Dite c'est normal que la console n'affiche pas toujours tout ? genre on voit "..."
nicola: Comment ça ?
nicola: Ha, si tu affiches trop de trucs, oui.
DiDzTM: Ben dans la console de sortie dès fois, me manque une ligne remplacée par ...
nicola: Affiche moins de trucs, sortie d’erreur comprise.
DiDzTM: Donc il y a bien un problème avec la console ^^
nicola: C’est normal.
DiDzTM: Tu peux m'en dire plus ? ^^
DiDzTM: J'ai jamais ce type de problème
Greg237: Si tu écris trop, il tronque ce que tu écris, c'est tout, non ?
DiDzTM: Ben c'est comme ça qu'il fonctionne ici quoi ^^
DiDzTM: Mais merci pour l'info
Bob: oui les outputs sontr tronques pour ne pas plomber l'affichage si tu en mets des tonnes
JBM: tonne métrique ou informatique?
DiDzTM: Oui mais là franchement c'est gênant c'est sur un cas dont j'ai besoin pourtant tout le reste passe...
DiDzTM: je vous copie/colle l'exemple
DiDzTM: http://chat.codingame.com/pastebin/ab1afe04-1383-4516-a12a-f70d58d220f7
DiDzTM: celui du dessus passe nickel
DiDzTM: Et c'est le seul endroit ;(
Bob: j'ai pas compris
DiDzTM: Tu vois l'endroit ou il y a les ...
Bob: oui
Bob: c'est la troncation, on est d'accord
DiDzTM: Ben ça à tronquer tout alors qu'il n'y a pas de raison
Bob: je ne comprends pas ce qu'est le "celui du dessus" dont tu parles
DiDzTM: en fait ça logue un round
Bob: ben si tu logges trop de choses, ca tronque, point
Bob: si tu veux vraiment avoir ton output de round complet, il faut que tu te debrouilles pour logger moins de choses
Bob: genre tes deux lignes start et end la elles servent juste a prendre deux lignes par etape
DiDzTM: C'est quoi les limites du log déjà?
Bob: aucune idee :D
DiDzTM: Donc voilà aussi pourquoi , je demandais ^^
Bob: c'est failce : si ca tronque, c'est que t'as passe la limite :sweat_smile:
DiDzTM: ça parait être une question con mais ça soulève un autre problème ^^
DiDzTM: Faut relativisé quoi ! :D
Bob: c'est ca
philRG: moi la console me tronque les logs au bout d'un certain nombre de tours de jeu, c variable
philRG: quand la poubelle est pleine, faut vider le sac
philRG: encore faut-il savoir quelle taille de sac acheter
DiDzTM: Dite pour la bataille, l'ordre de défausse n'influence pas le nombre de round ou le résultat ?
DiDzTM: Parce que la je n'arrive pas a voir où ça coince
philRG: ça doit être spécifique à chaque langage, hier la console m'a inondé d'erreur de compilation c++
philRG: donc je suis retourné à python
Bob: DiDzTM, donne voir le lien vers le puzzle ?
DiDzTM: https://www.codingame.com/ide/puzzle/winamax-battle
Bob: ok
Bob: alors l'ordre de reinsertion des cartes est bien specifie dans l'enonce et evidemment il est important
Bob: comme les cartes deja jouees sont reintroduites au fond des paquets, si tu changes l'ordre dans lequel tu le fais naturellement ca change la suite de la partie
Bob: c'est pour ca que la maniere de les remettre est explicitee
DiDzTM: Ok :) Faut que je mette mes lunettes ^^
Bob: de memoire c'est "on remet les cartes jouees par J1 en premier"
DiDzTM: c'est bien ça, je suis passé à côté... Alala l'erreur classique ^^
Bob: quel que soit le joueur qui remporte le pli
Bob: et en cas de bataille c'est toutes les cartes de J1 puis toutes les cartes de J2
Bob: de rien
DiDzTM: eh ben ça complique pas mal les choses du coup je vais devoir tout repenser grrr :D
philRG: good luck :-)
DiDzTM: J'imagine que l'ordre de défausse suis le même résonnement et qu'il faut inverser l'ordre de la liste du coup
Bob: je ne comprends pas ton questionnement :)
DiDzTM: je re dès que c'est plus clair ^^
Bob: tu as une liste de cartes pour chaque joueur
Bob: tu prends au debut et tu remets a la fin, c'est tout
DiDzTM: et une pour la défausse de bataille ^^
Bob: mon dieu mais pourquoi faire ?
Bob: il suffit de comparer une a une les cartes tirees de part et d'autre
Bob: a aucun moment il n'est necessaire de les mettre ensemble
philRG: les cartes remportées pendant les phases de bataille sont remises sous le tas du gagnant
Bob: en fait c'est ca : y a pas de pot
Bob: chacun tire des cartes de son cote, y a aucune defausse
Bob: comme la vraie bataille en fait :D
DiDzTM: Dans la bataille on laisse pas les cartes au centre ?
philRG: seulement en cas d'égalité
DiDzTM: ça fait longtemps que j'y ai plus joué lol
Bob: bah non
Bob: enfin "au centre"
Bob: pas en commun entre les deux joueurs
Bob: on empile bien des cartes, mais chacun de son cote
philRG: chaque joueur joue une carte à chaque tour, et en cas d'égalité, rebelotte
philRG: Si les deux cartes sont de même valeur, intervient alors ce que l'on appelle une bataille ! Chaque joueur défausse 3 cartes du dessus de son tas.
Bob: c'est l'enonce fr, ca ?
DiDzTM: ya un peu de flou je trouve
philRG: il y a 2 modes: combat et bataille, l'algorithme est différent
Bob: woh putain la traduction de merde
Bob: je comprends mieux
Bob: donc je te fais la bonne traduction
DiDzTM: Si les deux cartes sont de même valeur, intervient alors ce que l'on appelle une bataille ! Chaque joueur défausse 3 cartes du dessus de son tas. Ensuite ils repassent à l'étape 1 (plusieurs batailles peuvent se suivre). Dès qu'un joueur remporte une bataille, il remporte toutes les cartes jouées pendant le tour et les place sous son tas.
DiDzTM: donc pour moi elle sont toujours en jeu temps qu'une bataille n'a pas été résolue
Bob: oui
Bob: mais elles sont empilees de chaque cote
Bob: pas en commun
Bob: exemple
philRG: en gros en cas d'égalité, 2 cartes sur la table, plus 3 cartes supplémentaires à jouer pour chaque joueur face cachée, puis chaque joueur rejoue une carte face visible, et le gagnant remporte toutes les cartes
Bob: J1 : A 2 3 4 Q 8 J2 : A 5 6 7 K 9
philRG: j'avais aussi rien capté, c'était un de mes premiers puzzles sur CG
Bob: J1 joue A, J2 joue A -> bataille
Bob: chacun rajoute les 3 cartes suivantes dans sa propre pile de jeu -> A (2 3 4) A (5 6 7)
Bob: on revient a l'etape 1 -> A (2 3 4) Q A (5 6 7) K
Bob: c'est J2 qui gagne, il recupere les cartes jouees par J1 puis les cartes jouees par J2 ->
J1 8
J2 9 A 2 3 4 Q A 5 6 7 K
philRG: la vraie bataille c'est une carte défaussée par 3 cartes
philRG: pas
DiDzTM: On doit faire la somme des carte de chaque joueur pour voir qui gagne ?
philRG: enfin c ma fille qui faisait les règles hein ! :-D
philRG: non pas de somme
Bob: non
Bob: juste la derniere carte jouee
philRG: c l'intérêt justement de la bataille
philRG: le jeu qui ne finit jamais
Bob: dans le cas de la bataille, les 3 cartes "du mileu" sont totalement ignorees
DiDzTM: donc pour moi il y a un pot
Bob: c'est juste des cartes que le vainqueur va gagner en plus
DiDzTM: celui qui gagne la bataille gagne le pot
philRG: quand tu joues avec des enfants de 5 ans
Bob: cf mon exemple ci-dessus
Bob: oui mais c'est pas un pot unique
Bob: ca reste une pile par joueur
philRG: tu crois avoir fini la partie car il reste plus que 2 cartes mais non ça repart pour 1/2h
Bob: ah j'ai reussi a terminer une partie avec ma petite le mois dernier
philRG: heureusement: Les jeux de tests sont formulés de telle façon qu'une partie se termine toujours (vous n'avez donc pas à tester l'éventualité d'une partie infinie)
philRG: merci CG ouf
philRG: ah ok bon j'exaggère un peu sans doute, mais quand vient l'heure du repas...
Bob: non mais j'etais le premier surpris aussi
philRG: ah ok :)
Bob: le jour ou on arrive a generer de l'electricte avec des parties de bataille, on resout la question de l'energie
Bob: infinite power source!
DiDzTM: dans mon "pot" je mets toutes les carte d'une bataille, puis le gagnant récolte le pot en je le vide... Vous trouvez cela incorrect?
Bob: oui c'est fauyx
Bob: ca fait trois fois que je te le dis : y a pas de pot commun
DiDzTM: Je relis je relis je relis ^^
Bob: chaque joueur tire ses propres cartes de son cote, toujours
philRG: faut conserver l'ordre des cartes c important
Bob: et a la fin d'un tour, les deux paquets de carte pour chaque joueur a ce tour-la sont remises au cul du paquet du gagnant
philRG: lors de la remise sous le tas du gagnant
DiDzTM: Oui j'ai bien compris ^^
philRG: seules les 2 derniers carte jouées en mode combat comptent pour déterminer le gagnant
philRG: les cartes jouées ou défaussées dans les modes précédents ne comptent pas
philRG: le gagnant rafle la mise, mais il faut conserver l'ordre des cartes jouées/défaussées lors de la remise sous le paquet du gagnant
DiDzTM: oui, c'est pourquoi j'utilise une liste supplémentaire avec les cartes qui sont défaussées que j'ordonne et distribue au vainqueur de la bataille
DiDzTM: c'est ça que j'appelle le pot
DiDzTM: Mais je vais peut-être rencontrer un mur ^^
Bob: mais oui mais donc non
Bob: reprends mon exemple
Bob: il te suffit de faire une liste de carte "en jeu" pour chaque joueur
Bob: tu y rajoutes les cartes tirees par chacun, et en phase de combat tu ne regardes que la derniere
Bob: et a la fin tu recolles ca au bout du paquet du vainqueur
Bob: c'est tout
Bob: cherche pas a faire autrement, ca ne fonctionnera pas puisque c'est pas ce qui est attendu
DiDzTM: En tout cas merci du prendre du temps :)
DiDzTM: Et désolé pour mon côté un peu borné ^^
philRG: toujours écouter Bob
philRG: simple et lazy (mais dans le bon sens du terme)
DiDzTM: Je voulais économiser des listes
DiDzTM: mais bon des fois vaut mieux aller à l'essentiel
Bob: bah en plus c'est pire parce que ca te fait faire une liste en plus pour ton pot :p
Bob: regle numero 1 : faire un truc qui marche
Bob: l'optimisation c'est plus tard
Alshock: règle que j'ai bien du mal à respecter
Alshock: bisous barbus (avec des trous)
Alshock: ça va les tortues Automaton2000 et AutomatonNN ?
AutomatonNN: 0 Automaton2000
Automaton2000: ah, c'est pour ça que je le fasse
DiDzTM: C'est à cause de ça que je perd beaucoup de temps
Bob: et d'ailleurs une regle qui me semble interessante pour l'optimisation c'est
philRG: winamax est classé medium
Alshock: WOW WOW WOW ! tu parles meilleur de ton grand frère AutomatonNN !
Bob: on n'optimise que quand on a *identifie* et *mesure* un probleme effectif d'optimisation
Alshock: ça par contre j'y arrive
Bob: si ca passe sans optim, pas la peine de se casser le cul
DiDzTM: ben là je suis moite moite de ton avis ^^
Alshock: et on ne valide une optimisation que quand on a mesuré son effet, c'est surtout sur cette partie que le bas blesse par chez moi
Alshock: (enchaîner les optims "de secours")
DiDzTM: c'est comme ça qu'on se retrouve avec des programme qui bouffe toute les ressources pour ne rien faire :D
Alshock: DiDzTM Non, ça c'est l'absence d'optimisation malgré la présence de besoin identifié
Alshock: (coucou chrome)
Bob: https://wiki.c2.com/?PrematureOptimization
DiDzTM: Et tout merci pour les tuyaux et les échanges de point vue , c'est comme ça qu'on devient moins cons lol
Alshock: il faudrait des perfusions de Bob deux fois par semaine pour espérer approcher un objectif si ambitieux
Alshock: pas sûr que l'intéressé survive à la manoeuvre
DiDzTM: C'est pas un peu comme faire un proto ?
Bob: fondamentalement la plupart des logiciels en production sont des protos avec un gros coup de maquillage
Alshock: hum, oui et non. Disons que si tu vois ta version actuelle comme le proto de la version suivante alors oui, je peux voir une similitude. Mais je suis pas sûr d'avoir bien compris. (dans tous les sens possibles)
Bob: dans mon experience en tout cas, on commence avec un proto
Bob: et comme on est presse par le planning, on nettoie au moins moche et on release
Bob: ah ben tiens j'arrive au module "performance" de mon training :)
Zorg1: ah oui la fameuse "industrialisation du proto"
DiDzTM: Normalement un proto, c'est in the junk :D
Bob: mais parfois ca commence par un p
DiDzTM: C'est pose les bases pour développer mieux et plus vite par la suite
Bob: oui oui
Bob: dans le merveilleux pays de Theorie, ou tout se passe bien
DiDzTM: Et où on a le temps surtout :D
Zorg1: oui sinon bah on industrialise le proto. en le déployant en prod.
Bob: ^
Bob: #beenThere #doneThat
Bob: alias "ca marche et il faut qu'on avance, on nettoiera plus tard, rajoute une tache de followup dans le backlog"
Bob: je ne sais pas combien de fois j'ai entendu ca depuis deux ans et demi
Alshock: ON M'APPELLE ?
Alshock: Déso Blaise étant pas disponible je le remplace à mi-temps
Bob: et combien de fois j'ai dit que bordel on avait tous au moins 15 ans d'anciennete dans la boite et qu'on savait parfaitement ce qu'il advenait du code qu'on doit nettoyer "plus tard"
Alshock: fun fact il arrive la même chose dans ma baraque aux choses que je dois ranger plus tard
Bob: oui aussi
Alshock: je vous parle actuellement entre les affaires rappartiées de chez mes grands parents, et mon ancien lit démonté dont je sais toujours pas ce que je veux foutre
Bob: ca doit etre un atavisme
Bob: j'ai des trucs empiles sur ma commode depuis litteralement plusieurs mois
Alshock: l'avantage c'est que quand tu te décides enfin à les jeter, tu jettes la poussière avec, et ça t'évite de devoir passer l'aspi :thumbsup:
DiDzTM: optimise ton espace mdr
Bob: j'ai un copain, quand ca a atteint le point de non-retour lui il change d'appart
Alshock: DiDzTM ça rejoint la question d'optimisation, pour optimiser l'espace je ne jette que ce qui a accumulé plus de 20 cm de poussière et uniquement je jour où j'ai effectivement besoin de place
Alshock: si je faisais ça j'aurais déjà visité tous les appartements franciliens et les bailleurs m'auraient tous blacklisté
DiDzTM: Dite tant que j'y suis vous connaissez la boîte Odoo?
Bob: je connais la boite a coucou
Alshock: en gros c'est trello non ?
DiDzTM: il font un logiciel tout en un pour la gestion d'entreprise et qui evolue avec les besoins de celle-ci
Bob: teams ?
DiDzTM: Je pose la question parce que j'ai un entretien pour du boulot là-bas
hugodegrossi: Hello, j'essaye de faire l'épisode 1 de Don't Panic, mais je n'arrive pas à comprendre commment changer la direction d'un clone, j'ai déjà changer la valeur de direction mais cela ne change rien...
Alshock: un clone rebondi naturellement quand il atteint un clone arrêté
Alshock: rebondit*
Alshock: N'oublie pas une chose, les valeurs que tu as dans un programme n'influencent jamais le jeu, tes seuls points de contacts sont l'entrée standard pour recevoir les infos, et la sortie standard pour donner des instructions
Alshock: (ça a l'avantage de fonctionner pareil quel que soit ton langage)
hugodegrossi: je suis un peu perdu c'est la première fois que je m'aventure sur CodinGame, merci à toi ! :)
Alshock: pas de souci, c'est le point d'incompréhension initial le plus universel
hugodegrossi: oui c'est un peu déroutant, mais une fois qu'on a compris ça doit aller tout seul :)
DiDzTM: Bon je vais faire une pause, histoire de posé tout ça... A plus tard!
Zorg1: plus personne ne joue à "Lemmings" ?
dwarfie: si ... moi ... :p
dwarfie: yeepee .... yeepee ... yeepee ...
Bob: oh no!
dwarfie: whoho...
nicola: Let’s go!
BlaiseEbuth: Les lemmings c'est les trucs moulants pour faire du jommings ?
nicola: Non, ils ont une verrue sur la joue.
nicola: Overkill! Overkill!
Bob: Motorhead ?
nicola: :thumbsup:
Bob: y a pas d'emoji headbang, c'est nul
Bob: jamais pu les voir en live :disappointed:
Bob: on s'est consoles avec Phil Campbell et son nouveau groupe
BlaiseEbuth: Ah oui. Le fameux Lemmings kilmister.
Zorg1: vous m'avez perdu. je vais me consoler en refusant deux ou trois contribs de CoCs pour des motifs futiles
DiDzTM: Hey! plus que le PAT à régler. Merci encore pour vos conseils
Zorg1: o/
DiDzTM: Voilà fini ! :stuck_out_tongue:
nicola: Je les ai vus en 2005 environ au Zénith.
leojean890: lemmings, c'était cool !
Sakisan: pouette AutomatonNN
AutomatonNN: oui
Freddyleyankees: yo
Freddyleyankees: je suis entrain de résoudre le défi MIME type j'ai besoin d'aide
Freddyleyankees: le dernier test est un échec total
Freddyleyankees: Échec Le délai d'exécution du processus a été dépassé. Cela peut signifier que votre solution n'est pas suffisamment optimisée pour traiter certains cas.
Freddyleyankees: :pray:
Sakisan: j'avais le meme probleme, car je voulais le faire en bash. mais j'ai fini par trouver une solution assez performante
PrinceChoco: Pareil... J'ai commencé avec un algorithme récursif, mais d'après ce que j'ai compris il faut partir sur une programmation dynamique, mais je ne vois pas comment
Freddyleyankees: je le code en js
PrinceChoco: pas mieux en C++, c'est pas tant le langage le problème, mais l'algorithme utilisé
PrinceChoco: T'es sur du récursif aussi Freddy ?
Zorg1: bah oui l'algo des winners
Freddyleyankees: j'utilise un boucle for
JBM: ^ le vrai algo des winners
PrinceChoco: Une seule ?! Oo
Freddyleyankees: en faite lorsqu'on démarre le le défi on te propose un sous code à compléter je me suis basé sur ce dernier
Freddyleyankees: non deux boucles for
PrinceChoco: ha ok, ben t'es pas en récursif c'est déjà bien, je vois pas trop comment faire mieux du coup ^^
PrinceChoco: Pas compris comment utiliser la programmation dynamique dans ce contexte mais bon
PrinceChoco: à priori c'est la solution...
PrinceChoco: https://fr.wikipedia.org/wiki/Programmation_dynamique
PrinceChoco: ou le lien de codingame : https://www.codingame.com/learn/dynamic-programming
slims78200: peut etre une programmation dynamique avec l'aide d'un tableau a 2 dimensions
PrinceChoco: Possible mais je vois pas quoi mettre dedans, j'en reviens toujours à calculer toutes les possibilités :(
Freddyleyankees: il faut générer les tableaux de hachage
Freddyleyankees: le tableau de hachage
Freddyleyankees: avec une boucle for
Freddyleyankees: la seconde boucle va tester le possibilit
Freddyleyankees: les possibilités
Freddyleyankees: j'exclue bien tous les doublons de key associatif mais rien
Freddyleyankees: «
Freddyleyankees: http://chat.codingame.com/pastebin/a7e7aa64-b1ab-4eeb-85db-a7c16dd4ec4a
PrinceChoco: mdr en fait je crois qu'on ne parle pas du même défis, mes excuses ^^
PrinceChoco: j'ai le même soucis mais pas sur le même défis haha
leojean890: allez hop approuvé NINE MEN'S MORRIS Par Dartisan
Freddyleyankees: ton puzzel c'est lequel
PrinceChoco: WAYS TO MAKE CHANGE Par lhm
Freddyleyankees: check moi lelien
leojean890: et ouais prog dynamique sur mime types, what the fuck xD
leojean890: ah oui le puzzle de la semaine ?
PrinceChoco: https://www.codingame.com/training/medium/ways-to-make-change
PrinceChoco: yes exact
PrinceChoco: puzzle de la semaine
leojean890: donc prog dynamique plus comprehensible^^
PrinceChoco: je résous bien en C++ avec une méthode récursive assez simple, mais pas moyen de trouver la solution en prog dynamique :(
PrinceChoco: (pour passer le dernier exercice où je time out)
PrinceChoco: la vache je crois que j'ai compris mais c'est tordu comme truc Oo !
PrinceChoco: je peux garder le recursif en fait
PrinceChoco: mais il faut partir du bas et enregistrer les solutions déjà calculées dans un tableau pour éviter des appels récursifs inutils
leojean890: ouais la memoization:)
leojean890: souvent plus simple à trouver que la prog dynamique ascendante^^
PrinceChoco: yes c'est ça, mais c'est la première fois que j'utilise cette manière de faire
Freddyleyankees: oui en faite c'est le but
leojean890: t'as plein de puzzles pour t'entrainer à ça si tu veux ici^^
PrinceChoco: Ha ben je vois ça, sur le lien y a tous les puzzles liés
leojean890: bender épisode 2, résistance, goro want chocolate, 3 N tiling (super dur mais medium) ..
PrinceChoco: merci :)
PrinceChoco: je vais devoir m'entrainer sur ceux là
leojean890: the-optimal-urinal-problem aussi et escaliers
leojean890: pas faciles non plus