Chat:Fr/2020-12-22
788361: amis de la récursion, bonjour
Bob: Automaton2000, tu récurses ?
Automaton2000: et tant que je suis con
XorZy: :joy:
Bob: :D
788361: une fois de plus il y a un détail important qui est noyé au milieu des dizaines de trucs inutiles de l'énoncé
788361: et l'exemple a le bon goût de donner quand même le bon résultat si tu codes l'algo en zappant ce détail
JBM: je pourrai pas regarder avant cet aprem
Bob: ah j'ai un résultat
Bob: mauvais mais c'est déjà mieux qu'un truc qui ne termine jamais
Bob: ah mais putain de typo de merde planquée dans mon interpolation !
Bob: forcément ça va tout de suite mieux
Kirbiby: vous répondez en cb de temps sur la part 2 ?
XorZy: Omg le détail de l'énoncé
XorZy: 800ms
XorZy: L'exemple est vraiment mal choisi
Kirbiby: okay
Kirbiby: Après 6 min je mouline encore, doit y'avoir une merde :d
XorZy: Oui il y a un truc dans l'énoncé qu'il faut bien lire. Ce n'est pas vérifié dans l'exemple donné...
Kirbiby: hmm , j'ai bien lu l'énoncé
Kirbiby: J'ai le check sur les rounds précédents
Kirbiby: et je copie que le nombre de cartes nécessaires pour un subgame
Kirbiby: 2 choses qui ne sont pas dans l'exemple
XorZy: Ah bah lol c'était ça mon pb xD
Kirbiby: y'a une troisième ?
XorZy: Une fois corrigé ça marche nickel donc il doit y avoir un autre truc que tu as oublié :/
Kirbiby: ouai je me dis bien ^^
Kirbiby: jvais re re lire
XorZy: Ca aide pas que ce soit un pavé :(
Kirbiby: t'as un ordre d'idée du nombre de rounds que tu joues au total ?
XorZy: Je peux check ça
XorZy: 1132
Kirbiby: ah ouai
Kirbiby: après 30 secondes, j'en suis à 40 000
XorZy: Aussi, détail, quand tu vérifies les doublons, on seul deck en double suffit, pas besoin d'avoir les deux
Bob: le nombe de cartes pour le subgame c'est bien dans l'exemple
Bob: c'est par là que je m'en suis rendu compte, au début je prenais la totalité du deck restant
Bob: accessoirement, le résultat arrive très vite, même sans rien optimiser ou mettre en cache
Kirbiby: moi aussi et pourtant je finissais l'exemple :/
Bob: moins de 10 secondes avec mon JS naïf
Kirbiby: et je viens de reessayer et en prenant tout le deck je finis l'exemple
Kirbiby: j'ai une couille dans une couille qquepart :/
XorZy: Pourtant je trouvais le bon résultat pour l'example sans prendre le bon nombre de cartes :/
Bob: XorZy: oui moi aussi
Kirbiby: copain
Bob: ça c'est super piégeux
Kirbiby: mais tu viens de dire exactement l'inverse
Bob: non
Kirbiby: Ah tu veux dire que c'est écrit dans l'exemple qu'il déroule
Bob: oui
Kirbiby: C'était pas clair
Bob: autant que son énoncé :)
Kirbiby: tellement :/
Bob: bon à sa décharge, c'est pas non plus évident d'imaginer toutes les mauvaises manières de résoudre le truc qui vont donner le bon résultat par accident sur l'exemple
XorZy: Oui après techniquement c'est écrit donc à moi la faute mais ça aurait du être en gras je pense.
Bob: oui je trouve aussi
Bob: là c'est quand même un détail majeur et c'est noyé au milieu du reste du texte, dont 95 % est généralement de la décoration
XorZy: ^
XorZy: AutomatonNN t'en penses quoi de l'énoncé?
AutomatonNN: attends c'est qui Automaton2000
Bob: mais bon il est coutumier du fait, à force on finit par s'en douter
XorZy: AutomatonNN problèmes de mémoire ? :joy:
AutomatonNN: en fait c'est pas trop lent de contre le multi
ilovebugs: Salut, vous parlez de quel problème ? Je suis un peu out, ça fait un bail que je pas passé par ici
XorZy: Advent of Code
XorZy: https://adventofcode.com/
ilovebugs: merci
Bob: t'as que 22 jours de retard, ça va aller vite :à
ilovebugs: Je ne vais pas le faire, mais ça à l'air sympa. Je fais le pac man pour me détendre
Bob: bah après tu peux le faire à ton rythme
ilovebugs: ça reste ouvert toute l'année ?
Bob: et quand tu t'ennuies il y a les années précédentes :)
Bob: oui
ilovebugs: Les puzzles sont intéressants ?
Bob: oui
ilovebugs: je mets de côté alors
Bob: tu n'es même pas obligé de terminer une journée pour avancer
Bob: juste que le "jeu" c'est de les résoudre au fur et à mesure de leur apparition en décembre
Bob: il y a pas mal de variantes de problèmes classiques
Bob: les deuxièmes parties manipulent assez souvent des ordres de grandeur importants qui empêchent le bruteforce et nécessitent de trouver le bon truc pour aller vite
Bob: tu as parfois des séries
ilovebugs: c'est que je me suis dit quand j'ai lu l'énoncé du premier exo de cette année
Bob: en 2019 un des premiers puzzles demande de coder un interpréteur d'assembleur
Bob: dont le jeu d'instructions est étendu par 2-3 puzzles suivants
ilovebugs: ambitieux qd même du coup
Bob: et après tu as d'autres puzzles qui l'utilisent
Robin_Hood: non
Bob: bon toutes les infos te sont données hein
ilovebugs: excéllent comme idée
Bob: au départ t'as trois instructions
Kirbiby: heureusement que y'a pas ça cette année , j'ai sauvegardé aucun code
Bob: le truc se construit petit à petit
Robin_Hood: salut
Bob: mais jour 13, on te donne un programme de casse-briques à faire tourner dessus
Bob: et le but de l'exercice c'est de finir la partie :)
ilovebugs: Le gars qui fait ça est un peu dingo non ?
ilovebugs: ça à l'air assez incroyable
Bob: 2019, les exos sont sensiblement plus complexes
Bob: ça l'est
Bob: ça doit lui prendre un temps monstre à mettre au point
ilovebugs: j'avoue que l'histoire de l'interpreteur est tentante
Bob: https://adventofcode.com/2019/day/2
Bob: on peut juste lui reprocher la verbosité de ses énoncés, qui camouflent souvent des détails d'importance au milieu d'un bloc de texte décoratif
Kirbiby: En fait sa phrase sur "Before either player deals a card, if there was a previous round in this game that had exactly the same cards in the same order in the same players' decks," ça veut pas dire que les deux decks doivent être identiques en même temps
SydM107: non Kirbiby
Kirbiby: c'était clair pour tout le monde sauf moi ? :p
SydM107: je suis anglophone, mais je peux voir pourquoi ca prete la confusion
Kirbiby: y'a quand même players et decks au pluriel
Kirbiby: :p
SydM107: c'est le "same"
SydM107: et players' n'est pas pluriel
SydM107: c'est le posesif
SydM107: attend
Kirbiby: bah player's possessif singulier et players' possessif pluriel no ?
SydM107: si c'est au pluriel
Bob: c'est au pluriel oui
Bob: donc c'est vraiment bien les deux jeux
Bob: même si d'après XorZy ça semble suffire de n'en vérifier qu'un seul
SydM107: mais le context du phrase ne donne pas que les 2 deck sont identiques
DarkGaulois: il y a des exos en sql sur ce site ?
Bob: pour moi c'est ce qui est dit par la phrase
Bob: indépendamment de tout contexte
Kirbiby: en tout cas mon code de merde, il met 2 min à cracher la solution même en release -O2, et si je vérifie l'un ou l'autre des decks
SydM107: mais contexte est tres important
XorZy: Ca tourne en boucle si je vérifie les deux
Bob: ah moi je vérifie les deux et ça résoud en moins de 10 secondes
SydM107: sinon il aura juste dit (both players' decks are identical)
Bob: sans cache ni autre optim
Bob: et sur mon petit coucou tout mou
XorZy: En vérifiant l'un ou l'autre ça prend moins d'une seconde :/
XorZy: Sans cache non plus
Bob: perso j'aurais dit both players' decks pour être parfaitement clair, mais pour moi sa phrase veut dire la même chose
SydM107: kirbiby tu peut m'envoyer l'énoncé?
Kirbiby: https://adventofcode.com/2020/day/22
Bob: en tout cas, ça passe tout à fait bien en vérifiant les deux jeux :p
SydM107: je vois pas le phrase en question
Bob: SydM107: faut que tu fasses la première partie :D
Kirbiby: ah ouai faut que tu fasses la part 1 pour la voir
XorZy: Hmm je vérifie les deux mais avec un short-circuit or
Kirbiby: http://chat.codingame.com/pastebin/1c31d874-dca5-4c9a-8a6b-5e8aa61e6945
XorZy: Avec un and ça prend du temps, mais j'ai pas laissé tourné pour voir si ça termine
XorZy: *tourner
Bob: moi je le fais vraiment sauvage
Bob: https://pastebin.com/YLxfLTnj
Kirbiby: ah ouai
Kirbiby: jvais tester ça
XorZy: Mon code
XorZy: http://chat.codingame.com/pastebin/bf3d517c-5b3a-4457-86f3-112229e96e35
SydM107: ca veut pas dire que les 2 decks sont identique
Kirbiby: http://chat.codingame.com/pastebin/fca89529-7d71-4d0b-9da1-4826c8f18a20
Bob: bon sang que je hais la syntaxe des algo de C++
XorZy: Ok avec le & ça finit en 97secondes, avec le mauvais résultat
Bob: je sais pas comment vous faites :D
XorZy: (Et c'est normal que j'arrive pas à ouvrir les pastebins de cg?)
Bob: (non)
SydM107: Game 1 : http://chat.codingame.com/pastebin/d441d614-d42e-4b0a-b648-77bf380b7c25
XorZy: Bizarre j'ai un 404 sur tous les liens :/
Bob: SydM107: ça sort d'où ton exemple ?
SydM107: game x active le condition mais le 2 decks ne sont pas identiques
Bob: les deux joueurs ne doivent pas avoir les mêmes cartes
SydM107: de mon cul
Bob: oui donc tu inventes un exemple qui ne colle pas au contexte du jeu, juste pour dire que c'est ton interprétation qui est la bonne :)
SydM107: mais c'est pour montrer que les 2 decks ne sont pas identiques
Bob: non mais ça c'est ton exemple pour expliquer ton interprétation
Bob: on a bien compris ton interprétation
SydM107: mon but est de clarifier l'anglais pas aider avec le jeux
Bob: la question c'est de savoir si c'est bien la même que celle qu'il faut appliquer pour le jeu
Bob: et accessoirement moi si je ne vérifie qu'un seul des deux jeux, je n'ai plus le bon résultat
XorZy: wtf
Bob: ce qui me porte à croire que le sens que *lui* donne à sa phrase, c'est vraiment "les deux jeux à la fois dans un état connu"
SydM107: @Bob oui, il faut vérifier les deux
XorZy: Alors pourquoi ça marche que comme ça chez moi :/
Bob: de toute façon c'est logique
Bob: si tu répètes un état de départ connu, tu vas boucler
Bob: mais si tu n'as qu'un seul des deux jeux dans un état connu, tu n'as pas de garantie que ça va boucler
SydM107: yes
Bob: SydM107: ah ça y est j'ai capté
Kirbiby: c'est pour ça que je comprends pas le comportement de ma solution :d
Bob: on a compris la phrase de la même manière mais on ne parlait pas du même détail :)
Bob: c'est pas "les deux jeux identiques entre eux" mais bien "l'ensemble des deux jeux identique à un état précédent"
Bob: mais on est d'accord qu'il faut bien vérifier les deux
XorZy: Je peux avoir votre input pour voir si ma solution marche quand même?
SydM107: je repondé surtout a Kirbiby quand il a demandé "En fait sa phrase sur "Before either player deals a card, if there was a previous round in this game that had exactly the same cards in the same order in the same players' decks," ça veut pas dire que les deux decks doivent être identiques en même temps"
Bob: Player 1: http://chat.codingame.com/pastebin/4d894d99-3198-4e94-9f24-94cb31195f49
Kirbiby: Player 1: http://chat.codingame.com/pastebin/96bad1c6-2618-4ac1-afe1-284f14b83a49
Bob: tu dois trouver 32054
Bob: Kirbiby: 35154 ?
Kirbiby: yep
Kirbiby: ça va vraiement vite chez toi :d
Bob: j'ai pourtant rien fait pour
XorZy: Merci kriby je trouve pareil bob non
Bob: du coup t'as un os
Bob: donne voir ton input ?
XorZy: Player 1: http://chat.codingame.com/pastebin/79498cee-13ed-4b13-b265-5a0dc9a6f0b2
XorZy: 32731
Bob: c'est ça
Bob: même que c'est le joueur 1 qui gagne
Bob: chez moi c'est encore le crabe :)
Bob: chez Kirbiby aussi
XorZy: Ok avec AND je trouve la bonne solution chez bob
Bob: tada
Bob: cqfd
Kirbiby: Ouai
Bob: en tout cas au niveau perf j'ai vraiment rien fait de particulier
Bob: en général pour AoC je code au plus naïf / simple à exprimer
Bob: et maintenant c'est l'heure d'aller faire les courses
Bob: bon appétit les choupis
Kirbiby: Oui en plus il a dit que tous les exos prenaient moins de 15secondes sur un vieux PC
XorZy: ^o^/ Du coup sans autre input je serais resté sur un or, enfin au moins mon code est plus juste mais aussi plus lent :p
XorZy: Ok en virant les tuples je passe de 1min à 5 secondes avec la bonne solution, ouf
Robin_Hood: https://www.codingame.com/contribute/view/595823ebd728ea438289c7b824ee387b6b71
darkhorse64: Après print(input()[::-1], print(input()*2), je sens une bonne progression dans les contributions de CoC
Zorg1: j'ai l'impression qu'il y a un concours pour savoir qui rédige sa contrib le plus vite
Zorg1: bizarre même pas du reverse ?
darkhorse64: https://www.codingame.com/forum/t/what-happened-to-coc/188394. La révolte des clashers gronde
Bon[]Crayon: Chatlut :smile_cat:
Bon[]Crayon: Automaton2000 à distance de sécurité
Automaton2000: en même temps, il y a des gens qui savent pas coder
Bon[]Crayon: AutomatonNN à jouer avec le feu, on finit par se brûler
AutomatonNN: oui et vous vous regardez en compte des trucs que c'est pas le contest de contest ?
Bon[]Crayon: AutomatonNN à qui tu le dis
AutomatonNN: le problème de la plupart de l'IA de ton temps de toutes façons il s'est pas encore en train de fair
XorZy: C'est à la mode les clashs ultra simples? On en a presque un par jour comme ça.
sanpas83: XorZy la plupart poste une contribution juste pour la chasse au point CG ... ce n'est pas top sa pollue la plateforme après personnellement je fais plus de CoC depuis que je suis sur les combats plus passionnant à mon égard
XorZy: Oui non clairement c'est n'importe quoi. Après je suis d'avis qu'il faut des clashs de tous les niveaux mais là c'est du foutage de gueule. Bientôt le clash "output the input"?
Zorg1: y a déjà eu ;-)
Zorg1: 2 chars en bash ^^
darkhorse64: Les guidelines disent qu'il ne faut pas rejeter un CoC parce qu'il est trop simple. Mais si ça n'a pas d'intérêt, ça va finir par décourager ceux qui aiment ça
darkhorse64: Pour aller faire un puzzle si ça ne t'apprend rien ?
darkhorse64: *Pourquoi*
XorZy: Oui absolument
darkhorse64: La quest map est une bonne chose car elle a visiblement attiré plus de monde mais je pense qu'il faudrait renforcer les règles de modération
sanpas83: oui c'est exactement la queste map qui engendre cela apres c'est sur il en faut pour tout les niveaux surtout dans les CoC mais bon
sanpas83: c'est dommage
XorZy: 50 clashes pour modérer c'est trop peu. Avec tous les comptes bidon que compte la plateforme c'est super facile de créer un clash pourri et de l'accepter en moins d'une journée.
Zorg1: 3 approbateurs c'est pas bcp non plus
Zorg1: mais je devine que le but c'est d'avoir d'avantage de puzzle de coc pour éviter d'avoir de retomber trop souvent sur le même
XorZy: Avoir beaucoup de puzzles est une bonne chose, mais si c'est pour privilégier la quantité sur la qualité non. Hier je suis tombé sur un clash avec un pavé énorme comme énoncé, la solution était littéralement n-1 !!
nicola: Dire que je n’ai même pas ces 50.
Kirbiby: En fait pour Bob ou XorZy, si ça mettait énormément de temps ce matin, c'était en partie car en debug dans VS c'est 50x plus lent qu'en lançant hors VS :D
XorZy: Oui si tu lances ta solution en Debug c'est toujours plus lent à cause de l'overhead, mais 50X ça me semble beaucoup, en général c'est un facteur de 2-3X chez moi
XorZy: En Debug j'ai 3197ms contre 2081ms en Release
Kirbiby: non je voulais pas dire Debug ou Release, pardon
Kirbiby: Si le lance en release avec debugguer (F5 quoi) ou si je lance sans (Ctrl-F5)
Kirbiby: j'ai 5 ou 45 secondes
Kirbiby: x9
Kirbiby: 50 c'était façon de parler
XorZy: Ah pardon c'est moi qui ai mal compris. Mais la différence entre F5 ou CTRL-F5 est minime chez moi, de l'ordre d'une seconde.
Kirbiby: Ouaip; mais tu n'est pas en C++ non ?
XorZy: Ah! Effectivement, j'ai lu VS alors j'ai pensé de suite à C# :sweat_smile:
XorZy: Mais c'est incroyable l'overhead que rajoute le debugger C++ alors
Kirbiby: je sais bien qu'on a de gros ralentissement en C++ avec le debugger, mais comme d'habitude le code est lent parce que je l'ai mal écris je me suis plutôt penché là dessus
XorZy: Mon code non plus n'est pas tip-top mais tant que ça te donne la bonne solution en temps raisonnable tout va bien :ok_hand:
b0n5a1: o/
XorZy: ^o^/
Zorg1: \o
Bon[]Crayon: [+_+]
Bon[]Crayon: bonne soirée AutomatonNN
AutomatonNN: probablement pas ton code :p
Bon[]Crayon: bienvenue au club Automaton2000
Automaton2000: y en a un qui a un avantage
Bon[]Crayon: Automaton2000 c'est le lièvre
Automaton2000: désolé je ne connais pas:p
Bon[]Crayon: Automaton2000 Rien ne sert de courir ; il faut partir à point.
Automaton2000: c'est pour un truc que j'ai pas le niveau
Bon[]Crayon: 1
Zorg1: 2
nicola: 4
XorZy: 9
dwarfie: PERDU
XorZy: :cry:
Zorg1: te laisse pas impréssionner XorZy : https://oeis.org/search?q=1%2C2%2C4%2C9&language=french&go=Chercher
XorZy: :grinning:
Zorg1: celle ci est très chic : https://oeis.org/A000667
Zorg1: "Boustrophedon" tout de suite ça calme comme adjectif (existe aussi en français)
JBM: j'employais ca comme nom perso
XorZy: Logiquement, quand j'ai vu 1,2,4, je me suis dit "Boustrophédon!" bien entendu :p
Zorg1: ah oui c'est un nom, quoique j'avais vu "terminal boustrophédon" dans un vieux livres
Zorg1: XorZy : évidement, comment peut il en être autrement ?
Zorg1: (une imprimante plutôt, je suis crevé moi)
DarkGaulois: hi
Bon[]Crayon: par Toutatis
Bon[]Crayon: poil aux dents AutomatonNN
AutomatonNN: non
Bon[]Crayon: poil au nez AutomatonNN
AutomatonNN: ok
BlaiseEbuth: Yo tout l'monde ! Automaton2000, AutomatonNN !
Automaton2000: tu as une liste de coups que tu peux pas dire
AutomatonNN: oui je suis pas sur que tu peux pas mettre un truc que j'ai aidé avec un code que je ne sais pas si
Zorg1: o/
yosrizakhama1: bonsoir tout le monde, je suis novice ici :) mais j'appréci bien cette plateforme it's very good
BlaiseEbuth: \o
b0n5a1: se sont pas foulé sur steam pour les cartes, design recyclé
Zorg1: les cartes de quoi ?
Zorg1: ah ok ce sont les "soldes" d'hiver sur steam
**BlaiseEbuth se bouche les oreilles
ad_mo: :revolving_hearts:
Stilgart: Zorg1: bon, Molek syntez c'est du niveau de difficulté de Opus Magnum
Stilgart: fini en 2 aprèm sans pression
Stilgart: par contre, je pense qu'il y a du potentiel si tu veux optimiser tes designs
Bon[]Crayon: Je proteste, la souris s'échappe et pourtant je gagne pas :rage:
Bon[]Crayon: https://www.codingame.com/replay/517676648
Bon[]Crayon: à la ni vu ni connu j’t’embrouille
leojean890: ça y est, je jeu des échecs tant exploité par les chercheurs en théorie des jeux arrive sur CG ^^https://www.codingame.com/ide/demo/865494807d115f7493e0b7fa465bc5d2780647
Bon[]Crayon: ah ouais ok
leojean890: la compet va être rude sur celui-là hehe
BlaiseEbuth: C'est du chess960 c'est cool
leojean890: faut que je lise bien les règles ;)
BlaiseEbuth: Bah c'est les mêmes, mais les positions initiales des pièces sont randomisés.
leojean890: ah oui il a écrit "pour éviter qu'on hardcode les starters avec un book"
domak: o/ stoi l'bouc
leojean890: (moi je connais pas parfaitement les règles des échecs sinon, y'a des subtilités du genre des manips particulières avec les tours etc j'avais vu)
BlaiseEbuth: \o
leojean890: yo domak
domak: comment il me prend la tête le fc2020....
domak: tout le monde me dit "facile de passer avec un simple BS"
domak: mais bon, moi ça passe pas légende
**Stilgart tend un bfs à domak
BlaiseEbuth: Pas de bras..
Stilgart: c'est bien plus facile pour l'éval
BlaiseEbuth: Brew For Supremacy !
Stilgart: surtout qu'il doit y avoir un bon ventre mou de bs en gold
domak: oui le bas du gold c'est fast brew
domak: le BFS c'est bien quand t'as de la perf
BlaiseEbuth: Bof
domak: bah faut quand même bien descendre en profondeur
domak: ou faut savoir pruner
BlaiseEbuth: Bah tu peux prune
BlaiseEbuth: voilà
domak: mais du coup on est pas loin du BS
BlaiseEbuth: Bah un bs c'est un bfs avec une heuristique
leojean890: le bs est une manière d epruner parmi N ^^
leojean890: de pruner*
domak: oui dans tous les cas faut y mettre un peu d'intelligence... et c'est pas mon fort
Arnaud.Net: BFS 200 largeur + item valeur 1 2 3 4 + 0.95 par tour ya pas besoin de bcp plus pour go legend
domak: oui c'est ce que j'ai lu, mais chezmoiçamarchepas
Arnaud.Net: surement des bugs :p sinon a chaque tour tu fais le delta ou tu recalcules tout ?
domak: delta
Arnaud.Net: :thumbsup:
domak: en fait j'ai un score pour le BS (en gros item valeur 1234) et un score pour le choix final qui est le prix * decay ^depth
domak: le score pour le choix final, je l'ajoute au parent
Stilgart: domak: limite toi à des triplettes de potions si besoin
Stilgart: ESCROLL (c'était en réponse au pruning du BFS)
Stilgart: mais en vrai, on n'a pas tellement besoin de pruner, ni de gérer l'adversaire
BlaiseEbuth: Halo The Master Chief Collection à 24€... :thinking:
Stilgart: arrête de vider mon porte-feuille !!!
BlaiseEbuth: C'est pour me sentir moins seul
Stilgart: sur ce, je vais me coucher
BlaiseEbuth: Il fuit !