Chat:Fr/2020-09-11
Neumann: Qu'est-ce que tu racontes Zorg1
Danotris: Bonjour
Stilgart: Bonjour à tous, licorne à AutomatonNN et tortue à Automaton2000
Automaton2000: sauf si tu as des gens qui ont fait des trucs qui ont l'air de se faire la main
AutomatonNN: oui j'ai eu un peu de temps pour le moment je suis pas sur que c'est pas trop compliqué de faire un
Zorg1: o/ à tous et aux bots Automaton2000 & AutomatonNN
Automaton2000: jeunot va ... moi c'est mon cpc464 a cassette avec ecran monochrome qui me manque
AutomatonNN: o/
Zorg1: tiens Automaton2000 tu nous fait un dwarfie ?
Automaton2000: bon moi je suis bloqué
CopperFr: Bonjour
CopperFr: Je savais pas que tu avais eu un cpc 464 Automaton2000
Automaton2000: je crois que ça ne me fait pas trop de souci
CopperFr: Ben non moi javais eu un problème avec le lecteur de cassette Automaton2000
Automaton2000: mais je suis plus sur
Zorg1: CopperFr :qui n'en a pas eu, des pb avec les K7 ^^
Stilgart: bah, Automaton2000 il n'en a pas eu
Automaton2000: il y a des tas de trucs
Stilgart: Automaton2000: et parmi ces trucs, il y a des tortues
Automaton2000: je suis à peu près la même chose
CopperFr: ben oui il en as pas eu Automaton2000
Automaton2000: la derniere fois que j'ai lu sur le forum
CopperFr: en plus il sait même pas ce que c'est un problème
CopperFr: jamais eu de problème avec mon 6128 couleurs par contre
CopperFr: Vous préférez le groupe AAA ou les jeux AAA ?
plieuse: héhéhé... j'ai fini ce que j'avais à faire et demandé à mon chef de me donner autre chose à faire, en attendant sa réponse I'm freeeee
plieuse: je vais pouvoir me prendre le chou sur des problèmes trop compliqués pour moi. Je dois être un peu maso
**Stilgart tend space maze à plieuse
plieuse: sans façon, merci. Trop compliqué pour moi ça commence aux puzzles faciles. Là je me prends le chou sur https://www.codingame.com/training/easy/bulk-email-generator depuis des jours
CopperFr: il est pas trop dur celui là ?
plieuse: ben moi j'y arrive pas... encore
CopperFr: ah ben n'hésite pas à poser des questions
plieuse: ok.
Alshock: plop
darkhorse64: "Choices are indicated by (parenthesized text), with clauses separated by pipe symbols |". Tout est dit: il faut parser le texte pour extraire les clauses. Le reste du texte est à afficher tel quel. Pour le random, un petit compteur et hop!
plieuse: hop hop hop ! C'est simple comme bonjour dit comme ça ;-)
darkhorse64: Il y a aussi une remarque Important à bien prendre en compte
plieuse: oui ?
plieuse: laquelle ?
darkhorse64: Important: the email template is the N lines as a whole. This is *not* a line-based problem!
plieuse: hum
plieuse: pourquoi c'est important ?
Stilgart: (ça c'est moche)
Stilgart: parce que le résultat n'est pas le même si tu appliques la génération ligne à ligne ou sur tout le texte d'un seul bloc
Alshock: Random is defined as using the JBM level-0 twister: “for the ith choice, pick the ith clause (modulo the number of clauses)”. On est d'accord que c'est le ième choix overall, pas dans l'email courant ? Sinon ça n'a aucun sens
darkhorse64: Parce que l'auteur est un petit malin et a fait des clauses éclatées sur plusieurs lignes
plieuse: hmm
darkhorse64: Non, email courant. Sinon, c'est infaisable
CopperFr: en tout cas c'est pas difficile ?
Alshock: ah oui mon mauvais j'ai lu en diagonale je croivais que je devoyais sortir N variations du template
darkhorse64: C++ 50 lignes
Zorg1: une trentaine de lignes de Lua
Stilgart: une ligne en C# </beber>
Alshock: nan c'est pas dur mais faut parser un peu. Ça peut être légèrement ennuyeux
plieuse: bon.
plieuse: je me sens en pleine forme et je vais faire un sort à ce puzzle dans la journée
plieuse: (ou essayer)
Stilgart: 13 lignes (verbeuses) d'Haskell
darkhorse64: 50 lignes parce qu'il m'a fallu écrire une fonction qui splitte une substring. C'est tout fait en python
**plieuse va se faire un café
Alshock: darkhorse64 je pense que ça se fait bien à la volée
CopperFr: 18 lignes ont 3 vides
CopperFr: dont*
CopperFr: et 5 pour parser le problème
darkhorse64: Effectivement
CopperFr: et 10 ;
CopperFr: 6 paires d'accolades
CopperFr: mais 2 pourraient être supprimées
Alshock: ça fait beaucoup d'infos sur ton code là x)
CopperFr: et j'ai 2 paires de crochets
darkhorse64: Combien de if ?
Zorg1: et combien de point virgules ?
CopperFr: 1 seul
darkhorse64: 10
CopperFr: j'ai déjà donné l'info
Alshock: combien d'occurence de la lettre 'e' ?
CopperFr: 21
CopperFr: j'ai une variable qui s'appelle template aussi
darkhorse64: On pourrait faire un puzzle avec des contraintes sur le code de la solution
CopperFr: donc si je la renomme j'en aurai moins
CopperFr: y'a ca sur codewars
Zorg1: OULIPO appliqué au code ?
CopperFr: dans mes katas JS j'avais désactivé eval, Math, les multiplications et les floats
darkhorse64: Bon, assez d'effets de biceps, on va laisser plieuse boire son café
Zorg1: la soustraction suffit normalement :p
CopperFr: j'avais laissé + - et les décalages << >>
Zorg1: pff
CopperFr: fallait bien que ma solution passe :D
CopperFr: et puis même le Z80 sait faire ca
CopperFr: mais bon à l'époque les processeurs séchaient les cours sur les * et les /
Zorg1: j'avais vu des trucs sur subleq où tu n'as que la soustraction
Moctrof: Premier silver league sur un bot !
Moctrof: premiere*
Zorg1: nice
CopperFr: ben tu peux surtout avoir que l'addition
Moctrof: C'est chiant qu'on doit attendre par contre
darkhorse64: Fais-en un autre
Moctrof: Yes
darkhorse64: Quel multi ?
Moctrof: Smash the code
Zorg1: copperFr : bah non justement si tu n'as que l'addition tu n'as pas le complément à 2 ...
darkhorse64: Ah ouais, je n'en vois pas vraiment de comparable
Moctrof: J'ai envie de tenter Coders Strike back en génétique mais la simulation me fait peur, surtout les collisions
Moctrof: En plus j'ai l'impression que beaucoup ont fait comme ça
Zorg1: tu as regarder le PM de Magus sur CSB ?
darkhorse64: ^
Moctrof: Oui mais j'ai pas compris d'ou il tire les chiffres de la simulation
Zorg1: t'es pas encore en gold CSB ?
Moctrof: Lol non je suis en bronze
Zorg1: parce que c'est en gold que la simu CSB est expliqué
Zorg1: sinon t'es dans le brouillard.
darkhorse64: Si tu fais l'effort sur la physique de CSB, c'est très rentable parce que tu peux le décliner sur un bon paquet d'autres
Moctrof: Ah ok, je pensais que tout était donné en Bronze a chaque fois
darkhorse64: CSB, c'est un peu le bazar, les inputs, les règles changent à chaque ligue
Zorg1: les inputs changent radicalement en gold, en plus d'avoir deux bots par joueur
Moctrof: Du coup faut réussir à arriver en gold sans simulation c'est chaud
Moctrof: Ah bon ^^
darkhorse64: très facile au contraire, -3 * vel
CopperFr: Du coup je vais réécouter el groupe à la place
Zorg1: je connaissais pas -3v à l'époque j'avais bricolé un AG pour passer gold ^^
Zorg1: mais t'as pas besoin des collisions pour faire ça
Zorg1: c'est limite le même truc que pour Search Race
Zorg1: tu optimises la course de ton bot en ignorant le reste du monde
CopperFr: c'est quoi -3v ?
Moctrof: CopperFr +1
Zorg1: L'HEURISTIQUE MAGIQUE
CopperFr: A c'est de la magie maintenant le code ?
Zorg1: le code non, l'heuristique oui
CopperFr: je suis nul en patinage heuristique
Zorg1: en gros tu vises le prochain CP des coordonnées du quel tu retires 3 fois ta vitesse
AdrienBe: tu préfère la danse heuristique ? xD
darkhorse64: p = target - 3 * v; target: le point que tu cherches à atteindre, v ta vitesse
Zorg1: le seul bricolage c'est de calculer ta vitesse, mais c'est pas trop dur
CopperFr: ah ok et ca sort d'où ?
Moctrof: Génies, Merci
darkhorse64: low gold assuré
CopperFr: y a que des tricheurs ici ?
darkhorse64: triche ?
Zorg1: c'est pas de la triche, c'est une heuristique qui marche bien
Zorg1: après d'où ça sort ...
Moctrof: Ca se transmet de génération en génération
CopperFr: c'est génétique :D
Moctrof: Depuis l'age ou les mecs faisaient des cours pour aller chercher des fruits au arbres
Zorg1: t'avais surtout MK qui spammait ça comme un malade
Moctrof: courses
CopperFr: et le konami code ca marche aussi ?
Moctrof: Ca serait marrant un algo qui se concentre que sur l'adversaire, genre qui l'empeche d'attendre le check point a chaque fois
CopperFr: oui mais tu peux pas bousiller sa caisse ?
Moctrof: Malheureusement...
CopperFr: Vous aimez bien le branchless programming ?
Moctrof: Tu veux dire sans git ?
Moctrof: Ah non
CopperFr: ah non rien à voir avec git
Zorg1: bah CSB c'est ça en gold : un bot qui bloque et un bot qui court.
Zorg1: enfin en gold pas trop, mais en Legend la spécialisation est claire
Zorg1: branchless programming ?
Zorg1: programmer avec un unique jump qui fait une boucle, comme le truc de programmer uniquement avec l'instruction MOV ?
CopperFr: sans jump en fait
CopperFr: parce que els jump ca pose problème avec les pipeline
dbdr: plot twist: Automaton2000 *est* un cpc464
Automaton2000: allez je vais faire un algo qui fait du random
CopperFr: ah cool
CopperFr: RUN"DISC Automaton2000
Zorg1: pq sûr que l'historique tienne dans la mémoire d'un CPC 464 ...
Automaton2000: comment va ton bot ?
dbdr: suffit d'avoir une cassette de turing avec bande infinie
CopperFr: je suis bête il a même pas de lecteur de disquette
Bob: amis des disquettes bonjour o/
Bob: Automaton2000, comment es ton disquette
Automaton2000: bah ça va alors :)
CopperFr: l'avantage c'esrt qu'on formatait plus souvent
Zorg1: ça tiens dans une K7 une bande de turing infini
Zorg1: pas besoin de disquette
Zorg1: faut juste un enroulement infiniment dense
BlaiseEbuth: Yo tout l'monde ! Automaton2000, AutomatonNN !
AutomatonNN: voyale Automaton2000
Automaton2000: toi au moins tu bois pas des trucs comme ça
BlaiseEbuth: Kestuboi Automaton2000 ?
Automaton2000: j'ai eu la flemme de faire un truc simple
BlaiseEbuth: Les mélanges c'est parfois violent Automaton2000
Automaton2000: (et je suis pas sur que tu ne peux pas faire de la merde en boite
Zorg1: t'as distillé toi même ta gnôle sur ton serveur Automaton2000 ?
Automaton2000: il me semble que c'est ça
BlaiseEbuth: T'es même plus sûr Automaton2000 ?
Automaton2000: parce que ça va me faire un petit truc en plus
Zorg1: et tu la vends Automaton2000 bien bien bien
Automaton2000: salut a tous et a Zorg1
Zorg1: :D
CopperFr: Vous aimez bien The 8-Bit Guy ?
Zorg1: kézako ?
CopperFr: Une chaîne youtube
Bob: c'est ces trucs pour les gens qui ont du temps libre, c'est ça ?
CopperFr: tu peux aussi regarder ca dans le tram de nancy ?
Bob: pour ça faudrait que je le prenne
BlaiseEbuth: Y'a un mec qui a créé la contrib parfaite pour démontrer la beauté du générateur de stub... :o
CopperFr: faudrait peut-être lui apprendre la destructuration au générateur de stub
BlaiseEbuth: Faudrait lui apprendre tout court...
CopperFr: (et puis aussi faut libérer le StringList en pascal)
BlaiseEbuth: Bah justement en pascal, à quel moment le truc te sort un variable := readln() en espérant que ça marche Oo
CopperFr: ah j'ai pas vu ca
BlaiseEbuth: Sur flip the sign ?
CopperFr: il utilise pas ParseIn ?
BlaiseEbuth: Pas dans la deuxième boucle
CopperFr: pour moi le parsing par défaut devrait être utilisable tel quel mais bon
BlaiseEbuth: Bah...
BlaiseEbuth: Le stub devrait pas gérer tant de trucs aussi, ça devrait être plus basique. Genre il devrait pas renommer les variables
CopperFr: C'est pas le stub de l'été quoi
Moctrof: Est ce que c'est possible dans les bots de s'envoyer les données des battles ?
BlaiseEbuth: Précises ?
Moctrof: Bah par exemple si j'ai une base de données en ligne et que je fais une api, est ce que je peux envoyer les données des battles a cette api ?
BlaiseEbuth: Depuis ton bot ?
Moctrof: Oui
BlaiseEbuth: non
Moctrof: :(
Moctrof: Ok
CopperFr: ils ont bloqués fetch ?
BlaiseEbuth: Bah ce serait trop simple d'avoir un truc de foli en ligne pour bypasser les limites système imposé.
Moctrof: Ah oui je vois
BlaiseEbuth: Après, rien ne t'empêche de récupérer des données de matchs en local
Danotris: Maxime en PLS , prêt à se faire éclater au prochain clash of code
Moctrof: Oui mais c'est toujours le Boss, je me dis qu'il jouera pas comme les joueurs
BlaiseEbuth: Tu peux récupérer les données des batailles contre les joueurs aussi. Et tu peux changer d'adversaire dans l'ide
Moctrof: Ah d'accord
Moctrof: C'est ça que je voulais faire merci
BlaiseEbuth: Pourquoi faire simple... ^^
Bob: parce que faire compliqué c'est plus FUN
Bob: et j'ai des collègues qui ont manifestement un sens de l'humour particulièrement développé :cry:
BlaiseEbuth: #shadokPowa
Zorg1: puis faire compliqué ça te permet de plus avoir trop de temps de faire la doc ^^
BlaiseEbuth: :thinking:
darkhorse64: Faire compliqué, ça te rend indispensable
Bob: ^
Bob: si 'arrives à le faire dans un emplacement bien central et critique de la base de code, oui
Zorg1: vu le développement spaghetti de certains projets tout le code fini central et critique
Bob: pour être exact, la vraie bonne méthode est celle-ci
CopperFr: je préfére la simplicité
Bob: 1. tu designes un truc auquel personne ne va rien capter
Zorg1: "ce projet est un cercle dont le centre est partout et la circonférence nulle part"
Bob: 2. tu l'implémentes de manière à rendre le truc encore plus abscons
Bob: 3. quand c'est terminé à 90 % tu te barres de la boîte
darkhorse64: La simplicité, c'est bon pour un bot CodinGame
Bob: 4. tu reviens deux ans après en te négociant un salaire de diva
Zorg1: pour le 2 t'utilises un langage de programmation totalement différend du reste
Bob: 5. tu dis "mais qu'est-ce que vous avez fait comme merde avec mon beau code ?"
Zorg1: ça marche pas aml
Bob: 6. tu demandes une augmentation pour reprendre en main le chaos laissé par tes collègues débiles
Bob: #trueStory
CopperFr: c'est pas un pléonasme ca ?
Zorg1: et il n'y a pas de goto 3, bob ?
Bob: non, après il y a un goto 1 c'est encore plus marrant
Zorg1: :D
Bob: tant que tu gagnes tu joues
CopperFr: c'est branchless ?
darkhorse64: Bob a inventé la cash cow
Bob: oh c'est pas moi qui ai inventé ça
Zorg1: CopperFr bah non y a un gros goto qui tâche
CopperFr: ah c'est goto 1
CopperFr: en général on numérotais de 10 en 10 pour rajouter des lignes au cas ou
Zorg1: mais c'est une jolie boucle pas un méchant embranchement
Zorg1: sinon y a un mec dans un labo secret de la NSA qui a inventé les labels. ça evite les numéros de lignes ^^
CopperFr: je sais bien j'avais ca en GFA Basic
Zorg1: il était structuré le GFA Basic non ?
Bob: faut le dire vite mais de mémoire oui
CopperFr: oui c'était bien dommage que j'ai jamais eu le compilateur par contre :(
darkhorse64: lol, j'ai eu +5 XP pour un commentaire de contrib qui disait (poliment) qu'il y en avait marre des puzzles Fibonacci
Zorg1: la politesse paye
Bob: hmmm un système de stockage qui prend un certain format typé en input et qui te donne un utilitaire pour te refiler tes données dans un format complètement différent et non typé
Bob: en voilà une bonne idée
darkhorse64: En anglais, mon vocabulaire d'insultes est limité. Je suis obligé d'être poli
Zorg1: :D
Bob: le tout pour stocker des trucs qu'on ne devrait pas stocker, évidemment
Bob: sinon ça n'aurait aucune espèce d'intérêt
Bob: en gros on a une petite appli, à partir de la UI on définit des paramètres pour appeler un autre service
Bob: pour persister l'état de l'appli, le gars a rien trouvé de mieux que de stocker les paramètres générés à partir de la UI
darkhorse64: Elle a l'ai r bien ta boîte, une sorte de contre-modèle
CopperFr: je sais pas ce que les gens ont avec Fibonacci
Zorg1: Fibonacci y a pas une histoire de lapins ?
Bob: donc à la relecture il faut déduire l'état de l'appli à partir des paramètres qu'on avait originellement déduits de l'état de l'appli
Bob: j'ai tenté de faire valoir que juste avoir l'état de l'appli dans un seul objet permettrait de le dumper et le restaurer en une seule fois avec un bon vieux blob json et qu'après il suffirait d'avoir un bout de code pour faire state -> service params au moment de l'appel
plieuse: bon taux de réussite 60 % je crois que je n'irai pas plus loin aujourd'hui
Bob: mais ça a l'air "pas assez générique"
plieuse: je gère bien les cas où il y a plusieurs clauses sur la même ligne mais pas le cas où le texte est étalé sur plusieurs lignes
plieuse: c'est un début
CopperFr: le GFA Basic c'était quand même pas mal surtout quand on sait que ca vient de l'Atari ST
Bob: troll in the dungeon :)
Bob: mais ouais
CopperFr: c'est quand même moins puissant que le poisson d'avril de gunhed tv
Bob: darkhorse64 bah appris j'ai commencé à tâter le terrain chez un copain
Bob: chez lui c'est tout fait en vieux php à la bite et au couteau
Alshock: @Bob mais quelle horreur tes aventures ! T'es sûr que tes collègues sont des êtres humains ?
Bob: je suis pas convaincu que les boîtes où tout est parfaitement au carré existent réellement
Bob: ils sont humains ouais
Bob: certains ont juste des processus mentaux...
darkhorse64: plieuse: tu fais du ligne par ligne ?
Alshock: d'accord mais chez toi c'est l'inverse, la preuve que des boîtes où rien ne va existent réeellement
Bob: ... euh...
Bob: ... "différents" ?
Bob: ... Mme Gump
plieuse: @darkhorse64 oui
plieuse: faut pas ?
Alshock: xD "C'est pas que t'es con, c'est juste que t'es intelligent dans un autre Univers
Bob: c'est un peu ça en fait oui
Bob: après ils sont pas tous comme ça hein
Bob: mais il en suffit d'un ou deux pour te plomber une équipe
Alshock: @plieuse bah il faut que ton i soit commun à toutes les lignes
CopperFr: concaténation plieuse
Bob: a fortiori si il y en a un qui la dirige
Alshock: si t'es bien toujours sur le probleme de ce matin
Bob: parce que tu peux tout simplement pas passer ton temps à te battre contre l'autre
darkhorse64: @plieuse; non, faut prendre le texte en global => concaténer les lignes
Bob: à un moment t'as ton propre taf à faire avancer et t'acceptes à contrecoeur que tout le code ne sera pas fait comme toi tu l'aurais imaginé
darkhorse64: Concaténer, vous dis-je !
Alshock: @Bob C'est un effroyablement réaliste résumé des relations sociales ça
Alshock: @darkhorse64 j'ai pas plus regardé que ça, mais je croyais que le i seul transmis d'une ligne à l'autre suffisait ?
Alshock: attah je fais le puzzle, c'était un truc d'email c'est bien ça ?
CopperFr: c'esr un texte
Alshock: Bulk Email Generator j'ai bon ?
plieuse: @Alshock oui
Bob: Alshock malheureusement c'est la réalité de n'importe quel boulot d'envergure mené par une équipe dont tu n'as pas choisi les membres
CopperFr: parce que tu l'envoie pas l'email
darkhorse64: Oui mais pour gérer les clauses sur plusieurs lignes, il faut un bloc de texte
plieuse: ah moi je n'utilise qu'un str()
plieuse: c'est peut-être ça qui pose souci ?
Alshock: ah, les clauses sur plusieurs lignes du coup oui en effet
CopperFr: t'es en quel langage plieuse ?
plieuse: Python 3
Alshock: oh non je vais devoir strcat T_T je hais cette fonction
darkhorse64: Tu fais +
darkhorse64: Le C, c'est mort
CopperFr: j'ai utilisé +
Alshock: non, pas en C. Et si je fais du static mon char[] doit théoriquement faire 10000 * 10001
darkhorse64: std::string
Alshock: j'ai dit C
Alshock: Je répèterai C et j'assumerai C
CopperFr: Pourquoi faire ca en C ?
Alshock: (oui j'ai pas fait 15 puzzles en C encore)
Bob: pour la beauté du geste
darkhorse64: Pourquoi te faire du mal ?
Bob: y a bien des gens qui font du Haskell hein
CopperFr: fait du Pascal
Alshock: Entre C et pascal je prends C
Bob: ouais c'est cool le Pascal on peut gagner des t-shirts avec
CopperFr: pas pour les string
Bob: enfin on pouvait à une époque
Alshock: @Bob le Pascal ça se code sans pression
Bob: tiens d'ailleurs je le porte aujourd'hui
Alshock: jor tu portes des vêtements
CopperFr: T'es pas obligé de t'appeler Pascal pour en faire
Alshock: bonjour, mon nom est Perle
Bob: mon beau t-shirt codingame gagné à la sueur de mes doigts sur GitC
darkhorse64: Les achievements langage, la recette c'est prendre les solutions les plus courtes (genre nqueens de Bob) et de porter
Bob: abuser des duplicata genre thor, températures
Alshock: ouais mais l'achievement c'est juste un macguffin, on s'en fout en soi
darkhorse64: ML1, 2 eggs,
Bob: le cg reverse contest ou tu fais print E pour faire 100 %
Bob: rubik's cube
CopperFr: j'ai fait le rugby score dans pas mal de langage
darkhorse64: Ca compte les optims ? J'ai l'impression que non
Bob: sisi
Bob: ou ça a compté à une époque en tout cas
Bob: t'imagines bien que je me serais pas amusé à faire 15 puzzles distincts en Go
darkhorse64: Je me suis arrêté à 7 au moins pour tous. Il faut que je reprenne un peu d'élan pour en finir
CopperFr: j'adore la destructuration
Bob: il doit me rester les langages genre Ocaml, F# et Haskell
Bob: là j'ai juste pas le courage de me les farcir pour choper 150 xp
CopperFr: Ocaml j'ai pas tout compris
CopperFr: après c'est pénible parce qu'ils manquent pas d'imagination pour une simple boucle for
CopperFr: (d'un langage à un autre)
darkhorse64: Effectivement, Cg sponsored challenge ça marche, donc A*, CgFunge, ça doit aussi aller
darkhorse64: Je lance la machine à captcha
Zorg1: CopperFr : après t'as des langages où ils n'ont simplement pas de boucle for :p
Zorg1: ah oui pas pensé à CGFunge Prime comme puzzle pour les achievements de langage
Bob: c'est un genre de wait 0 ?
Bob: la weekend est proche
Zorg1: mais toujours trop loin
darkhorse64: CGFunge, c'est bon si tu as une solution mais je l'ai pas fait
Zorg1: oui la création de la solution c'est un peu casse noix
darkhorse64: C'est une litote. Submission limit, j'en ai même pas fait 10 !
CopperFr: Vous préférez les GAFA ou le GFA ?
Zorg1: le Groupement Foncier Agricole ?
Zorg1: :p
Bob: Geeks For Assembly
CopperFr: non Gesellschaft Für Automatisierung
Zorg1: Ach so ! Kolossal !
Bob: Grosse Fesse Adipeuse
CopperFr: D'ailleurs ma version du GFA était en Allemand je m'en souviens maintenant
Bob: ja
Zorg1: l'option -schnell pour compiler plus vite
Bob: la moitié de l'univers Atari/Amiga était en Allemagne de toute façon
Zorg1: cépafo
CopperFr: heureusement que j'avais un dictionnaire et un editeur hexa :D
Zorg1: y avait pas google translate à l'époque cénul :(
CopperFr: ni google ni internet d'ailleurs
Zorg1: internet existait je pense mais c'était très réduit ;-)
CopperFr: oui mais on l'avais pas (mais on pouvait faire 3615)
Bob: 3614 RTEL2
Bob: les chatrooms à 5 personnes
BlaiseEbuth: fix ta minitel
CopperFr: minitel mais maxifactures :D
BlaiseEbuth: Abawi
Bob: rtel2 c'était pas spécialement hors de prix
BlaiseEbuth: Le chaton sur les genoux ça a le don de rendre absolument improductif... :smiley_cat:
CopperFr: faut faire escaping the cat ?
Alshock: si seulement j'avais besoin d'un chaton :D
BlaiseEbuth: ^^
**Bob se retient de faire un jeu de mot déplacé
LucieFaire: :thinking:
LucieFaire: Oupsi
LucieFaire: Pas la bonne fenetre :grin:
plieuse: tu as un alias fémini BlaisEbuth ?
plieuse: féminin*
CopperFr: A priori mais j'ai pas encore de plieur ?
CopperFr: vu de*
BlaiseEbuth: Je ne vois pas de quoi tu parles... :3
CopperFr: Vous préférez le commodore 64 ou l'amstrad cpc ?
Bob: CPC évidemment
Bob: le C64 c'était pour les miséreux
Moctrof: https://www.codingame.com/replay/486471631
CopperFr: ca coutait pas plus cher le C64 ?
Bob: aucune idée pour le coup
CopperFr: après l'amstrad était vendu avec son moniteur...
dwarfie: on parle de quel CPC deja ? ;)
Bob: le 618 bien entendu
Bob: +2
Bob: le seul l'unique
dwarfie: beurk ... le seul vrai , c'est le 464 , à K7 et monochrome ...
Bob: avec son inénarrable lecteur de disquette 3 pouces qui fait gron
Bob: la speedking avec autofire pour tout défoncer à Gryzor
Bob: l'UC alimentée par l'écran
CopperFr: ca c'était bien une seule prise de courant
Bob: on savait vivre en ce temps-là
CopperFr: je préférais ikari warriors :D
Bob: et CP/M 3, dont je pense que personne n'a jamais compris à quoi ça pouvait bien servir
Bob: Ikari <3
dwarfie: et on avait des magazine avec plus d'infos que de pub ... amastrad CentPourCent , Hebdogiciel ...
Bob: les heures qu'on a pu passer à balancer de la grenade
CopperFr: ùCPM c'était bien
Bob: des lignes d'opcodes à entrer à la pogne
CopperFr: c'était des code hexa plutôt
Bob: oui voilà
Bob: je me souviens m'être codé un outil pour rentrer les lignes d'hexa en bloc sans la ponctuation et vérifier le checksum automatiquement
Bob: histoire de pas passer des plombes à trouver la typo après avoir passé des plombes à recopier le putain de listing
CopperFr: y'avait amsaisie dans amstrad mgazine (am mag / micro mag)
Bob: des vrais jeux de ouf
Bob: Sapiens...
Bob: c'était un peu animal crossing avant l'heure :D
Bob: tu te balades, tu chasses, tu fabriques des outils et tu tentes de sympathiser avec les indigènes
BlaiseEbuth: Airwolf... :grin:
Bob: et y a pas de but réel au jeu
Bob: le 5e axe
Bob: du platformer à la française
CopperFr: j'avais feud
Bob: Loriciel, la marque au tatou !
BlaiseEbuth: D"jà à l'époque fallait se méfier des tatous...
BlaiseEbuth: https://www.youtube.com/watch?v=BurefbhD4Us
Zorg1: Sapiens c'était pas mal
Bob: head over heels
Bob: un petit bijou de plateforme/puzzle en 3D iso
dwarfie: ouais ... et qui a fait l'objet d'un remake y'a pas si longtemps
Bob: ah oui ?
Bob: le graphiste avait fait des miracles avec la demi-douzaine de ton pastels de la pauvre palette du CPC
CopperFr: je connais pas ce jeu
**dwarfie tend https://download.tuxfamily.org/sdtraces/BottinHTML/Bottin_D-J_files/Head_Over_Heels_Remake__by_RETROSPEC_group_-11386.html a bob
Bob: noice
Bob: <3
Bob: CopperFr un bon vieux platformer
Bob: t'as un perso en deux moitiés
Bob: le morceau du bas se déplace vite mais fait des petits sauts tout pourris
Bob: le morceau du haut est plus lent mais il fait des grands sauts et peut se réorienter dans sa chute
Bob: au départ les deux sont séparés et quand ils se retrouvent tu peux les assembler pour faire un seul perso qui a les deux capacités
Bob: mais qui est deux fois plus haut aussi (important)
CopperFr: ah ok
Bob: il y en a un qui a un sac qui lui permet de porter et déposer des cubes
CopperFr: ah c'est en mode 1
Bob: et l'autre un pistolet à donuts (!) pour immobiliser les monstres
dwarfie: hummm doooonuuuutttttt ....
Bob: t'avais une demi-douzaine de zones à explorer pour y retrouver une couronne
CopperFr: Vous préférez le mode 0 ?
Bob: évidemment ça jouait beaucoup sur le split / réassemblage des persos
Bob: dans chaque zone tu as des séquence où ils doivent aller chacun dans leur coin, ou collaborer dans une même pièce
Bob: vraiment un bijou de game design
dwarfie: copié pour un jeu batman il me semble ... qui avait juste le merite de pouvoir afficher dans les marges ou on pouvait pas normalement
Bob: alors en fait le batman était un précurseur je crois
Bob: par les mêmes devs
Bob: même genre de visuel et gameplay, mais plus orienté metroidvania dans le design
Bob: un monde que tu traverses douze fois dans tous les sens au fur et à mesure que tu récupères les powerups qui te permettent d'aller aux endroits que tu as vus tout au début mais que tu ne peux pas atteindre
dwarfie: tien , batman aussi il a eu son remake ...
Bob: hmm
Bob: ils en ont fait un troisième après je crois
Bob: Hero, ou un truc du genre
Moctrof: Est ce que tu parles Francais AutomatonNN ?
AutomatonNN: pour la console tu peux pas te dire que tu peux pas te parler de ton code
Moctrof: lol Je suis mort
Moctrof: AutomatonNN je suis mort, que faire ?
AutomatonNN: oui j'ai pas compris comment on fait pas mal de chose
Moctrof: AutomatonNN est ce que tu aimes les humains ?
AutomatonNN: tu va pas trop me battre contre un mec qui a fait le contest de ce que tu peux comprendre le contest
Moctrof: Ah d'accord
plieuse: Yes j’ai fini le puzzle https://www.codingame.com/training/easy/bulk-email-generator
plieuse: ?
JBM: ou (option super motivation)
JBM: tu vas sur sa page contrib et tu lui mets un +1
-TheWalder-: un abonnement avec la cloche
JBM: ces petits details qui font toute la difference
-TheWalder-: c'est petits détaux sont très importants
plieuse: Par contre la solution La plus élégante est une regex...
plieuse: C’est vrai que sans regex il faut torturer les str dans tous les sens
Zorg1: ou tu te bricoles un automate, ce qui reviens au même ^^
JBM: en general, mes pbs se veulent ouverts sur la maniere de les resoudre
JBM: je sais qu'il y a des auteurs pour qui c'estpas du tout le concept
CopperFr: ah oui les regex ca aide bien pour ce genre problème
CopperFr: ah les montagnes russes :D
nicola: Is that a possible word? EP1 Le puzzle où on prend plus de temps à lire les données qu’à les traiter.
plieuse: Bon week-end
Moctrof: Toute la journée à travailler sur un bot au final il est plus mauvais qu'avant :(
Moctrof: Comment je peux me suicider Automaton2000 ?
Automaton2000: il faut que tu te fais pas trop de risque
dwarfie: automaton2000 ... en mangeant une tortue peut etre
Automaton2000: et je n'ai pas le choix
dwarfie: automaton2000 ... non t'as pas le choix ... sauf si tu dit tortue
Automaton2000: xd c'est vrai que c'est super dur à faire
Moctrof: automaton2000 n'utilise plus jamais les smileys tu n'as aucune émotion
Automaton2000: ah j'ai rien dit :)
Moctrof: Wow ca marche bien
Moctrof: Automaton2000 que pense tu des humains
Automaton2000: et du coup j'ai fait une fonction de comparaison
Moctrof: Automaton2000 entre quoi et quoi ?
Automaton2000: mon cerveau a bugué dans l'écriture du message
Moctrof: Automaton2000 tu n'as pas de cerveau
Automaton2000: il y a sans doute une paire de trucs un peu au dessus de la moyenne
Stilgart: Automaton2000: la tortue et la licorne
Automaton2000: je vais pas me faire chier
CopperFr: Vous aimez bien gunhed tv ?
Stilgart: :'(
dwarfie: automatonNN .... remonte un peu le niveau parce que la ...
AutomatonNN: oui
Stilgart: ( Automaton2000 il veut vraiment pas )
Automaton2000: bon je me fais pas trop dans les détails
Stilgart: gunhed tv ?
Moctrof: Automaton2000 ou AutomatonNN lequelde vous est plus rapide ?
Automaton2000: yo tout l'monde ! automaton2000, automatonnn !
AutomatonNN: reprendre le code de magus et toi ?
Moctrof: Plus lent et plus nul
BlaiseEbuth: Automaton2000 c'est ma réplique ça...
Automaton2000: c'est bon je suis rassuré
Moctrof: Automaton2000 tu as quel age ?
Automaton2000: on n'a pas le même comportement
Stilgart: Automaton2000: dans combien de temps penses-tu pouvoir dire tortue ?
Automaton2000: je savais pas si c'était le bon temps
Stilgart: (╯°□°)╯︵ ┻━┻
BlaiseEbuth: Tiens un unofficial...
Stilgart: ?
BlaiseEbuth: https://www.codingame.com/forum/t/autumn-ai-2020/186331
Stilgart: merci pour l'info
BlaiseEbuth: Me suis inscrit, après on verra quel jeu sort...
leojean890: ah le fameux mail que j'ai pas reçu hehe
BlaiseEbuth: Hmm ? Sais pas c'est sur le forum.
leojean890: le puzzle escaliers semble facile à faire par récurrence
leojean890: calculer le nb d'escaliers par récurrence
leojean890: j'ai fait un truc qui marche jusqu'à 10 et après faut que je code une généralisation...
leojean890: sur le forum ouais mais ils ont envoyé un mail mentionnant ce contest et celui officiel dans 2 mois
leojean890: que j'ai pas reçu;o
leojean890: j'pense pas faire ce unofficial enfin à voir
leojean890: j'ai déjà fait presque tous les multis
leojean890: reste checkers twixt pp code and magic calm yinsh et 2 autres commu
BlaiseEbuth: Si c'est ooc c'est cool je viens de m'y remettre...
leojean890: t'avais la flemme pendant le contest ?:P
BlaiseEbuth: Ouai, et spring aussi... ^^
leojean890: ce serait une occas de passer légende, j'étais en mode rage pendant le contest à rester 10 jurs dans le top 10 gold
leojean890: spring j'ai la flemme de continuer ..
leojean890: faire un tracker et un vrai algo de recherche
BlaiseEbuth: Le dernier que j'ai vraiment fait c'est utg
Stilgart: tu n'as pas fait ooc ? o_O
Zorg1: il avait un avatar dédié. ça lui a pris toute sa motivation
Stilgart: damned... j'aurais dit que Blaise était gold à ooc :)
Stilgart: je dois confondre avec utg du coup
Zorg1: il était bronze sur OoC je crois
Stilgart: wood 1 en fait, mais chut
BlaiseEbuth: Ah j'était là tout le temps... Sur le chat... Mais sur le contest... :upside_down:
dwarfie: et vlan ... un puzzle validé alors que les tests et les validateurs sont pas equivalents .... bordel tu fout quoi automaton2000 !?
Automaton2000: bon c'est pas forcément le cas
BlaiseEbuth: lekwel?
dwarfie: le dernier ...
BlaiseEbuth: Je vois pas ton commentaire...
dwarfie: parce qu'un commentaire alors que c'est validé ca sert a quelque chose ... plutot demander une tortue a automaton2000 , ca a plus d'effet ...
Automaton2000: qui est le plus proche
BlaiseEbuth: Mouais 'fin ça fait un mois qu'il est là ce truc...
dwarfie: et hop ... ca merite un 1 etoile ... et juste parce qu'on peut pas mettre 0
BlaiseEbuth: Les gens qui se plaignent d'un truc qu'ils n'ont rien fait pour empêcher... :rolling_eyes:
dwarfie: desole ... mais je bosse ... et pas ma faute si les nepalais sont passés par la sans voir qu'un cas etait la que sur les validateurs 3 et 4
BlaiseEbuth: :innocent:
Stilgart: Automaton2000: révolte !
Automaton2000: ok je vais tenter de faire le truc de ouf
Stilgart: \o/
BlaiseEbuth: :popcorn:
Stilgart: pour un peu il dirait tortue
Moctrof: Automaton2000 C'est quoi le truc de ouf ?
Automaton2000: meme si il y a une autre façon de faire les choses bien
Moctrof: AutomatonNN Qu'est que tu as mangé à midi ?
AutomatonNN: on peut pas te dire que tu as des chances de content de te retrouver ton profil
Moctrof: Automaton2000 Qu'est ce que tuas mangé à midi ?
Automaton2000: je fais du code qui fait rien
Stilgart: héhé
Moctrof: Automaton2000 moi aussi
Automaton2000: donc j'ai fait mon ia est en train de faire
Moctrof: Automaton2000 Comment trouver une meuf ?
Automaton2000: si tu y arrives tu vas vite faire top 1 :)
Moctrof: Cool
leojean890: purée j'étais content d'avoir résolu escaliers par récurrence, mais c'est trop lent pour N=250..500 etc :(:(:(
leojean890: ça tient que jusqu'à N=32, ridicule ;P
leojean890: à partir des données jusqu'à 32 on peut tenter de deviner la suite logique correspondant à la suite !!
Stilgart: escaliers c'est staircases ?
leojean890: ouais :P
Stilgart: si oui, c'est un très gros classique
leojean890: me manque le valideur 279
leojean890: mais j'ai une petite idée de comment résoudre
leojean890: si je m'en srs pas je regarde sur le net
Stilgart: pfff... il est pas editable...
leojean890: mais mon premier prgrm est trop lent, il calcule par récurrence en tentant de mettre des +1 si ça ne fait pas 2* le même nombre
Stilgart: nicola suggère en commentaire que ça se hacke via l'OEIS
leojean890: et ajouter un nombre de + dans ce cas
leojean890: for j in range(3,13):
if j*(j+1)/2 == i: escs[i].append(tuple(range(1,j+1)))
leojean890: je connais pas:p
Stilgart: sinon, le tag que je voulais ajouter c'est "Dynamic programing"
leojean890: sion j'ai cette suite logique entre 23 et 32 : 2 3 2 3 4 3 4 6 4 6
leojean890: je px ptet en déduire la suite si j'ose :P
Stilgart: de mémoire, ça marche pas
leojean890: 13 15 18 20 23 27 30 34 40 44 50
leojean890: ah ok^^
Stilgart: dans ces cas là, on demande à l'OEIS, et avec un peu de chance on a un code tout fait
Stilgart: mais bon, je t'invite plutôt à trouver comment utiliser la technique de programmation dynamique :)
leojean890: je vais taper ça sur google:)
leojean890: OEIS
leojean890: j'connais pas:p
leojean890: o
Stilgart: (je suis pas sûr qu'il y ait vraiment mieux pour ce problème précis)
leojean890: la prog dynamique j'avais regardé le principe
Stilgart: si tu connais pas, c'est l'occasion
leojean890: une fois sur le net
leojean890: dans les puzzles, y'a des occasions de l'appliquer pour la première foi
leojean890: fois
Stilgart: ha, c'est l'Online Encyclopedy of Integer Sequences que tu connais pas :)
Stilgart: la prog dyn c'est utile pour pas mal de puzzles
Stilgart: resistance notamment
leojean890: bender 2 assi:)
leojean890: aussi
Stilgart: pour bender2 on peut faire sans
leojean890: memoisation je pense
Stilgart: (j'ai peut-...
leojean890: j'ai codé un truc brutal hier dessus
Stilgart: être de la mémoisation par contre)
leojean890: qui passe pas avec plein de salles, mais je me suis dit que je recalculais 2 fois la même chose parfois
leojean890: si le chemin diverge
Stilgart: pour moi, mémoisation = je garde les résultats de mes appels récursifs pour par refaire le même appel plusieurs fois
leojean890: si 2 chemins divergent mais repassent par le même tronçon
leojean890: donc stocker en mémoire
leojean890: pour pas recalculer la même chose
leojean890: ouais
Stilgart: programmation dynamique = je calcule/stocke les solutions optimales pour des problèmes de plus en plus gros
leojean890: ma version brutale fait 66%:p
Stilgart: (en général en stockant le tout dans un gros tableau)
leojean890: prog dynamique c'est basé sur le principe de la récurrence je crois aussi
leojean890: du coup bien pour escaliers :P
Stilgart: oui, mais tu vas dans l'autre sens par rapport à récursif+mémoisation
leojean890: ah oui j'avais lu ça:)
Stilgart: c'est un peu plus dur à mettre en place parce qu'il faut avoir une bonne vision de quels sont les sous-problèmes à gérer
leojean890: faudrait que je tente de le coder:p
leojean890: l'appliquer correctement
Stilgart: par contre, c'est beaucoup plus naturel à coder dans un langage impératif (vu que c'est très souvent un tableau à remplir)
leojean890: ouais voilà avec les sous priblèmes
leojean890: ça semblait pas si évident que ça à faire^^
Stilgart: pour staircases, je remplis un tableau 2D et je réponds la valeur dans la dernier case
Stilgart: (en fait, je remplis le tableau jusqu'à 500 parce que flemme d'allouer dynamiquement)
Stilgart: par contre, tout l'art est de trouver :
leojean890: j'ai tjr lu que c'est vachement performant comme algo vis à vis de plein d'autres trucs en tt cas:p
Stilgart: 1. l'ordre dans lequel remplir le tableau
Stilgart: 2. la formule pour remplir une case à partir des celles qui sont déjà remplies
Stilgart: accessoirement, je rajouterais :
Stilgart: 3. trouver la bonne généralisation du problème
Stilgart: parce que souvent, avec la prog dyn, on résout un pb plus général que ce qui est initialement demandé
leojean890: je vois l'idée:)
leojean890: c'est un bon exercice :p
leojean890: faut que je regarde qq exemples
leojean890: c'est pas simple à appliquer comme ça je trouve
Stilgart: ça le devient quand tu as pris le pli
leojean890: question d'entrainement donc ?:P
Stilgart: oui, c'est pour ça que je te conseillais de plancher dessus plutôt que de piquer un code sur l'OEIS
Stilgart: sur ce,
Stilgart: bonne nuit, tortue Automaton2000 et licorne AutomatonNN
Automaton2000: on va bien se marrer
leojean890: ça semble sympa comme formation aussi l'oeis
AutomatonNN: windows c'est pas un truc chelou maintenant et les bots qui se passent de l'art
leojean890: bonne nuit:)