Chat:Fr/2020-09-11

From CG community
Jump to navigation Jump to search

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

Default avatar.png 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

Default avatar.png JBM: comment es ta weekend

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

Default avatar.png JBM: gg

Default avatar.png -TheWalder-: gg

Default avatar.png JBM: maintenant un pouce bleu

Default avatar.png JBM: O:-)

plieuse: ?

Default avatar.png JBM: tu lui mets 5 etoiles

Default avatar.png JBM: ou (option super motivation)

Default avatar.png JBM: tu vas sur sa page contrib et tu lui mets un +1

Default avatar.png -TheWalder-: un abonnement avec la cloche

Default avatar.png JBM: ces petits details qui font toute la difference

Default avatar.png -TheWalder-: c'est petits détaux sont très importants

plieuse: Par contre la solution La plus élégante est une regex...

Default avatar.png JBM: c'est possible

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 ^^

Default avatar.png JBM: en general, mes pbs se veulent ouverts sur la maniere de les resoudre

Default avatar.png 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:)