Chat:Fr/2020-06-05
Bon[]Crayon: AutomatonNN, salut
AutomatonNN: oui
Bon[]Crayon: Automaton2000, salut
Automaton2000: y a t il un moyen de le faire
Bon[]Crayon: Automaton2000 oui
Automaton2000: je trouve que c'est un bug dans ma fonction de calcul de distance entre deux points
Bon[]Crayon: Automaton2000 t'as toujours des bugs partout
Automaton2000: j'ai l'impression que c'est le premier truc qui me fait chier
Bon[]Crayon: Automaton2000 ah ah
Automaton2000: on est déjà en train de mourir
Bon[]Crayon: Automaton2000 tu es morose
Automaton2000: ah ça doit être un peu trop sur ce test alors qu'il est à portée
Bon[]Crayon: Automaton2000 à portée d'AutomatonNN ?
Automaton2000: par contre je ne sais pas où tu veux pas que tu ne sais pas si tu peux
AutomatonNN: oui aussi
Bon[]Crayon: Automaton2000 par contre je ne fais pas où tu peux pas que tu ne fais pas si tu veux
Automaton2000: genre tu fais une simu pour légende
Bon[]Crayon: Automaton2000 non c'est une simu pour gold
Automaton2000: sauf que là on est sur le forum
Bon[]Crayon: Automaton2000 sur le forum tu es une légende
Automaton2000: toujours pas de quoi tu parle
Bon[]Crayon: Automaton2000 ne fais pas le modeste
Automaton2000: et tu codes en quoi?
Bon[]Crayon: Automaton2000 j'ai commencé en c
Automaton2000: et dans le cas où tu as une chance sur deux
Bon[]Crayon: Automaton2000 c'est pas possible
Automaton2000: à part le fait que je fasse quelque chose de plus
Bon[]Crayon: Automaton2000 quelque chose de c plus plus ?
Automaton2000: ca ressemble plus à ce que tu dois mettre apres scanf nan?
Bon[]Crayon: Automaton2000 les parenthèses
Automaton2000: et ça change rien pour moi
Bon[]Crayon: Automaton2000 tu es toujours de marbre sauf face à un bug
Automaton2000: nan mais je vais attendre encore un peu de respect
Bon[]Crayon: Automaton2000 te faire respecter par les bugs! bon courage!
Automaton2000: le truc le plus simple pour moi
Bon[]Crayon: Automaton2000 le plus simple, c'est pas de code pas de bug!
Automaton2000: oui mais ça change rien
Bon[]Crayon: Automaton2000 faut aller consulter
Automaton2000: oui mais c'est le plus dur pour moi
Bon[]Crayon: Automaton2000 tu es dans la merde
Automaton2000: quelqu'un a un bon winrate contre le boss ...
Bon[]Crayon: Automaton2000 le boss il massacre les bugs adverses
Automaton2000: donc les inputs sont plus bonnes
Bon[]Crayon: Automaton2000 même les outputs
Automaton2000: d'un autre côté il y a un espace en trop à la ramasse
Bon[]Crayon: Automaton2000 fait attention où tu poses les pieds
Automaton2000: je suis pas prêt pour le contest :p
leojean890: tiens PR2 en challenge commu, ça va être un bordel sans nom les submits dans tous les sens, sachant qu'il n'y a pas de ligue :P
leojean890: tiens + 4000 CP dans la nuit juste pour un simple -3vel dans CSB :P
dbdr: la bonne occasion pour CG d'ajouter les ligues dessus :)
leojean890: j'avoue ce serait pas mal :P
egaetan: je suis pas sûr de réussir une deuxieme fois mon spam submit
dbdr: egaetan: sur PR2?
JBM: et lui il a droit a l'API secrete pour faire une notif chez tout le monde
WhatTrickeryIsThis: (╯°□°)╯︵ ┻━┻
Alshock: moi j'aime beaucoup PR2
leojean890: moi ça va, j'ai un bot qui traine vers 370.. je ne me suis pas inscrit, je ne suis pas sûr d'avoir la motiv d'améliorer ce bot maintenant
Alshock: mais bordel, je suis 372 avec un vieux bot de mort qui vit dans une classe "Application" parce que visiblement j'aimais surclasser à l'époque. On a vraiment un truc commun en classement leojean890 xD
leojean890: ce genre de contests non officiels sur des multis c'est sympa pour des gens qui ne l'ont pas commencé, mais sinon ça sert moyennement (par ex Neumann est 7eme déjà, à moins de viser #1:P)
Alshock: M.D.R. l'IA de mon bot me fait décéder :
target = self.dir_to_op_hq[i] if(random.randrange(100)<self.aggressivity) else self.zones[i].links[random.randrange(len(self.zones[i].links))]
Alshock: @leojean890 dans l'idée le but c'est de pousser à améliorer son bot sur ce multi. Donc Neumann devrait être incité à améliorer son bot pour éviter que tout le top 15 lui passe devant
leojean890: Alshock surclasser ? :P ouais dans ce sujet on a le même classement environ :P
Alshock: ce genre de dynamisme tu vois (même si pour lui le risque est faible)
leojean890: mais le fait de faire revivre un multi c'est sympa en tt cas:)
leojean890: au lieu de jouer contre des fantomes:p
leojean890: inactifs
Alshock: app = Application() # Starting the programme app.setup() app.loop()
Alshock: ce genre de surclassage, là t'as tout mon code
leojean890: je vois:P
Zorg1: ah c'est PR2
Alshock: yep
Zorg1: je dois avoir un vieux code "nuée de sauterelles" dessus
Zorg1: ah ok 585
Zorg1: même pas 200 lignes
Alshock: 174 pour moi
Alshock: (de lignes)
Zorg1: il se débrouille mieux que le mien ton bot ;-)
Alshock: on lance un tournoi code golf en marge de l'unofficial ? :P
Zorg1: lr tournoi non officiel dans le tournoi non officiel
Zorg1: inception
Zorg1: ah ok tu fonces direct sur la base ennemie
leojean890: moins de 300 lignes aussi..
Alshock: ah ah tu t'étais quand même pas imaginé que j'étais subtil ? :P
Stilgart: tiens, c'est quoi ce contest sauvage qui est apparu dans les tifs ?
Stilgart: notifs*
leojean890: si t'as envie de tryhard PR2 c'est le bon moment :P
Stilgart: j'ai envie de try hard les entretiens d'admissions là
Stilgart: (enfin, vu que je dois les faire, autant try hard)
Stilgart: 10j à partir d'aujourd'hui... ça veut dire que c'est mort pour moi
leojean890: ah oui pour les futurs élèves !
Stilgart: dommage, parce que c'était l'occas de faire PR2 vraiement ;(
leojean890: moi j'étais en mode begin de CSB ces temps ci :P
Stilgart: entretien de ce matin aà vendredi prochain... :(
leojean890: ah courage
Stilgart: c'est pas moi qui en ai le plus besoin :D
leojean890: j'savais pas que les recrutements étaient sur entretiens, et pas sur seules épreuves écrites et orales
leojean890: c'est les élèves je sais bien :p
Stilgart: on a environ 15% de non prépa
Stilgart: qu'on prend sur dossier + entretien
leojean890: d'acc je vois
Stilgart: ça permet de récupérer des profils intéressant
Stilgart: et d'excellents candidats étrangers
leojean890: ouais :P des gens qui ont déjà bien tryhard l'informatique par passion :P
Stilgart: (ma crainte étant alors que la connexion internet tienne sur toute la visio)
Stilgart: clair, la question de cette après c'est le classement sur le reboot de PR2 :)
leojean890: au pire tu refais plus tard la durée manquante de vision
Stilgart: -midi
Stilgart: oui, mais c'est terrible pour le candidat
leojean890: tu peux recruter des gens provenant d'IUT fac ou autodidacte :P
Stilgart: à la limite, moi j'ai appris à juger même dans de mauvaises conditons, mais le candidat il ne le sait pas
JBM: c'est dur d'avoir un dossier en autodidacte
leojean890: ouais je sais que c'est pas cool pour lui
Stilgart: il faut un Bac+2
Stilgart: le gros des troupes c'est DUT Info + STID + L3 math/info
Stilgart: assez souvent précédé d'un ou deux ans de PACES
leojean890: je comprends
Stilgart: bon, sur ce, il va être temps de reprendre le boulot </rires sadiques>
leojean890: same :P bon aprem !
Stilgart: merci, toi aussi
leojean890: thx
257832: Yo tout l'monde ! Automaton2000, AutomatonNN !
Automaton2000: non mais le problème du sac à dos
AutomatonNN: il faut avoir des puzzles magiques pour te dire que tu as des problèmes de contest pour toi
257832: Owi des puzzles magiques !
BlaiseEbuth: Voilà. Neumann qui commence direct premier du contest. :grin:
BlaiseEbuth: Bon par contre c'est cool, j'ai encore rien sur pr2.
b0n5a1: o/
Zorg1: \o
b0n5a1: c'est vraiment exactement PR2 le truc non officiel ? (jamais touché à celui là)
JBM: c'est tellement exactement lui que ca se passe sur la meme page
b0n5a1: arf, ok
dbdr: PR2.0
JBM: drole de choix quand meme
JBM: en contest non officiel, on refait un contest
b0n5a1: bon peut être à +, kiné + sortir la chienne (loin du canal ^^)
dbdr: il est super vieux non?
JBM: d'une certaine maniere, il est donc super naze
dbdr: ya que les vieux croutons qui l'ont fait en contest ;)
JBM: j'avais mieux a faire de ma vie a ce moment-la, je me souviens plus
Zorg1: je finis ma bière et une manip urgente en prod et je regarde ça
leojean890: en contest non officiel, on refait un contest d'avant => point positif : ça fait revivre le multi, --point négatif : faire un ranking sur ça ne peut pas avoir de cohérence logique (genre la diff entre le classement d'avant et le nouveau ça veut rien dire)
leojean890: vaut mieux recréer un sujet mais ça demande plus de taf
Zorg1: alors qu'il y avait TvC ...
leojean890: j'avoue:P
leojean890: tiens btw un bot avec -3vel et mon heuristique de silver pour le thrust classe 260 gold dans csb mdr
leojean890: mais pour légend sans simu c'est chaud je pense
Zorg1: b0n5a1 te dira qu'il l'a fait
dbdr: https://www.youtube.com/watch?v=1UXHsCT18wE pas mal fait
leojean890: oui il me l'a dit
leojean890: un an après il s'est fait pousser :P
Zorg1: les écouteurs sur la capuche, la grande classe
leojean890: dbdr vim et emacs j'aime pas trop :P faut vraiment être power user, apprendre les raccourcis et les avoir en automatique :P
leojean890: j'ai vu des machines avec ces éditeurs :P
dbdr: Zorg1: effectivement, bien vu!
leojean890: "des gens qui les utilisent à la vitesse de .."
leojean890: mais pour csb, juste changer de critères sur les angles pour affecter le thrust ça fait gagner 1000 places en gold quoi
leojean890: et faire une simu seul de A à Z c'est chaud je trouve :P
leojean890: la partie colllisions est hard
leojean890: sauf avec les checkpoints ça va
dbdr: 1000 places sur CSB c'est 10 places sur un autre multi ;)
leojean890: ouais je sais :P
leojean890: sauf en top légende
leojean890: mais entre 200 et 1200 gold je pensais pas que c'était juste avec ça
leojean890: et hardcoder un mec sur 2 qui devient bloqueur ça marche pas trop
Zorg1: super Jira est aux fraises
dbdr: l'heure des fraises est hardcodée
dbdr: vendredi soir
Zorg1: zou ça marche je me casse avant de me faire chopper sur Skype
leojean890: mdr l'astuce
leojean890: déco de citrix
leojean890: avant qu'on t'embête en plus
leojean890: moi j'ai livré un truc, j'ai mis plusieurs jours alors que c'était juste 20 caractères à changer ;P
leojean890: le temps de comprendre que ça venait de là..
leojean890: pour les collisions avec 2 pods il me semble que Magus fait des projections orthogonales sur la droite associée à son mouvement
leojean890: le truc que je parie que 95% des gens ont choppé à côté c'est les collisions élastiques;p
Zorg1: tu peux te débrouiller avec un produit scalaire
Zorg1: oui CG qui te balance ça comme si tout le monde savait calculer une collision elastique sans frottement
leojean890: mdr j'avoue faut être chaud, même en lisant un article pas sûr que ça s'implémente facilement:p
Lucasgood: j'ai un problème en javascript, ou une variable change de valeur sans raison aparrente
leojean890: en lisant un article qui explique ce que c'est
leojean890: état de l'art galère à implémenter, surtout si l'implem de cg est différente de celle de CG alors là c'est le drame:p
leojean890: Lucasgood je m'y connais pas en js mais print ta variable tout le temps je dirais pour voir quand ça change
Lucasgood: j'envoie une varriable a travers une fonction qui modifie la variable (supposé local) pour faire un calcul et me renvoie le resultat mais pas la variable modifier, je ne comprend donc pas pk elle change
leojean890: si l'implem de l'article est différente de celle de CG*
Lucasgood: http://chat.codingame.com/pastebin/036d9a7b-511b-4fe6-a1c9-97f3eb301f46
leojean890: ah en gros t'as une variable, tu l'envoies à la fct, tu la modifies dans la fonction sans la retourner et ça a modifié aussi celle du scope qui englobe la fonction ?
Zorg1: ah tiens qqn qui ne sait pas ce qu'est une référence ...
Lucasgood: oui
leojean890: alors en js je ne sais pas mais ouais je suppose que ça la passe par référence :p
leojean890: dans ton cas
Zorg1: oui cmap estun objet
Zorg1: ccmap pointe sur le meme
leojean890: donc les objets sont passés par référence en js mais pas les types primitifs
leojean890: j'aurai appris un truc =P
Lucasgood: bah justement c'est ça qui est chelou, je suis loin d'etre expert en prog j'ai bien survoler les pointer en lisant un peu le C, mais normalement en js il n'y a pas d'histoire de pointer
leojean890: bah des références d'objet quand même
leojean890: c'est utile d'apprendre dans quels cas les variables du scope appelant seront modifiées ou pas
leojean890: en python quand tu joues avec des listes faut faire des copies en les passant à une fct pour pas modifier le scope courant aussi
leojean890: même principe
Lucasgood: c'est vraiment bizard, de mon s experience hors codinggame, le js qui est haut level y'a vraiment pas de pointer :o mais bon jvais regardé ton histoire de copy ducoup
leojean890: références
Alshock: si justement, y a que ça
Zorg1: t'es en train de l'embrouiller avec tes histoires de scope
leojean890: en java c'est des "copies de références"
leojean890: et en lui parlant de plusieurs langages à la fois xD
Lucasgood: xD m'en veut pas je suis etudiant en medecine, rien a voir avec la prog donc je fais juste ca sur mon temps libre par plaisir xD
leojean890: t'as pas à t'excuser :P
Zorg1: c'est une erreur super classique en fait
leojean890: bah ouais je l'ai faite plusieurs fois
Alshock: ouais, et on l'a tous fait à une époque où on se pensait immunisés contre ça
leojean890: et Lucasgood même si j'avais deja mon diplome d'ingé je les ai faites hehe
leojean890: c'est pas que les études mais l'experience et la mémoire :P
leojean890: parfois tu zap des trucs
leojean890: ou tu les as pas vus dans le langage doné
leojean890: donné
leojean890: python et java je commence à retenir des trucs, cpp je commence à tout oublier, js je sais presque rien :P
Lucasgood: et ducoup vous avez une astuce pour facilement crée une copy de la valeur plutot que de la ref ?
BlaiseEbuth: Je viens de re, c'est quoi ta question ?
leojean890: fonction(copy(objet))
leojean890: enfin en js je sais pas si la méthode s'appelle copy
Zorg1: et si elle existe
BlaiseEbuth: En quoi ?
leojean890: js
Lucasgood: mais pourtant ça : http://chat.codingame.com/pastebin/209a8ae5-8d80-41a0-8e55-13b2ba37d646
Zorg1: type primitif
leojean890: en python faut faire gaffe genre pour une liste qui ne contient pas que des types primitifs faut faire deepcopy..
Zorg1: on recopie bien la valeur dans ce cas là
BlaiseEbuth: un homme de néendertal est un type primitif
leojean890: Lucasgood pour un type primitif tu ne fais pas copy(valeur)
Lucasgood: ah ok jviens de refaire le meme teste de mon a=b mais avec une liste contenant jsute le 0/1 et ça me fait bien le meme problème
Zorg1: par contre pour un type composé (tableau, objet) on ne copie que la référence
Lucasgood: effectivement c'est ce que je vient de comprendre
Zorg1: (variable pointant sur le même objet)
BlaiseEbuth: la joie des langages hl qui font des trucs implicitement
leojean890: yep au moins en cpp on choisit si le passage est par valeur, référence ou pointeur :P
leojean890: en js ou python faut savoir :P
Zorg1: t'as le même genre de comportement en Java et C#
Zorg1: copie pour les types primitifs, référence sinon
BlaiseEbuth: Qui sont des langages bas niveau, mais mauvais. DOnc tout va bien
Zorg1: "langage de bas niveau"
Zorg1: n'import quoi
Lucasgood: ok merci j'ai bien compris le problème ducoup, va juste falloir que je cherche les commande/syntaxe en javascript pour copier un tableau Grand merci !
**BlaiseEbuth tends un e à Zorg.
leojean890: bah tu fais copy(tableau)
leojean890: d'ailleurs l'ide de CG a un comportement bizarre quand tu passes d'un langage à un autre et tu reviens
leojean890: parfois il conserve
leojean890: parfois il tej ton code
dbdr: on est tous le bas niveau de quelqu'un
leojean890: c'est limite dangereux cette gestion d'ide
leojean890: bug codingame ?
BlaiseEbuth: Non, ton code est conservé si tu l'as executé, sinon non
leojean890: parfois j'exécute dans ide et il le vire quand même
BlaiseEbuth: Prouve me le
leojean890: euh comment prouver ça sans faire de partage d'écran xD
BlaiseEbuth: Donc ce que tu dis n'a aucune valeur, bug résolu.
leojean890: en python il fait ça systématiquement
YannT: whaaaat surprise contest??
leojean890: (quand je reviens au python depuis le java)
leojean890: YannT si tu veux faire du PR2 fais toi plais
YannT: s'toi le PR2 déjà
leojean890: je sais, je sais ;p
BlaiseEbuth: En même temps tu le fais passer du python au java puis re au python... Donc pas étonnant, il sature le pauvre...
leojean890: dans CSB j'ai ce souci
leojean890: et j'ai un code c++ mais lui ça me dérange pas qu'il le vire car finalement je vais faire du java :P
leojean890: c++ je vais trop galérer
leojean890: quoi que pour me réhabituer why not
leojean890: mtn je copie forcément mes codes à l'extérieur pour éviter les risques
dbdr: pourquoi faire simple? essaye le bot multi-langage
leojean890: avec la JNI ?:P
dbdr: java peut appeler gcc, et lancer des process
leojean890: j'ai fait ça qu'en android pour le moment
leojean890: avec du c++
dbdr: tu les fais communiquer entre eux
leojean890: (opencv)
YannT: et tu peux lancer javac avec python aussi
leojean890: faut que je regarde comment faire
dbdr: en gros tu peux lancer X avec Y :)
YannT: le mieux c'est de faire une chaine avec tout l'alphabet
leojean890: mais ouais j'avais lu que ça se faisait:P
leojean890: le C appelle le D
leojean890: hop 1/13 de l'alphabet
dbdr: Erlang
dbdr: mais on n'a pas
dbdr: Eiffel non plus
leojean890: Assembleur, Bash, C, D, Erland, F#..
leojean890: Go Haskell
leojean890: bon jvais pas tous les faire xd
leojean890: mais CSB c'est des CP gratuits avec le -3vel comme le COC
leojean890: t'es facilement à 4k/5k dans les 2
leojean890: alors que OC pour avoir 3800 CP c'est plus que chronophage :P
leojean890: OOC
kayou: Bonjour, vous savez comment on peut désactiver les assistances dans l'éditeur ?
Zorg1: kill -9 cg
Zorg1: c'est bien erlang
Zorg1: après bon si tu veux des perfs ça doit pas être le langage qu'il te faut
Zorg1: et t'as aussi les langages construit sur Beam, la VM (enfin une des vm) d'Erlang : Elixir, ...
Zorg1: Automaton2000 tu veux coder en quoi, toi ?
Automaton2000: tout ce que je fais
JBM: tout le monde veut des perfs sans realiser leur cout
Zorg1: et de ce que j'ai vu souvent "les problèmes de perf" c'est un truc mal implémenté qui fait du N²
Zorg1: pas besoin de changer le langage
dbdr: dans la vraie vie souvent, oui
dbdr: sur CG pas trop, dans le top...
Zorg1: ET LE PRAGMA QUI VA BIEN
Zorg1: (qu'est ce que j'ai à hurler comme ça moi)
JBM: le pb du top CG c'est que ca propage le mythe
dbdr: faut remapper CAPS LOCK en ESC, Zorg1 ;)
dbdr: c'est pas faux
Zorg1: et t'as plein de gars qui découvre que le C++ bah c'est un langage "tordu"
Zorg1: bah si tu me dis qu'en 20 ans il a tellement évolué qu'on ne le reconnait plus
dbdr: oui, il a grossi
Zorg1: il état pas super slim au début déjà
Zorg1: bon t'avais pas la lib avec les templates
JBM: j'aurais appele ca plus slim que java de la meme epoque
dbdr: Java le langage il est pas énorme
dbdr: le JDK oui, mais c'est plein de libraries
Zorg1: ensuite t'as l'écosystème façon Jungle tropicale
Zorg1: avec plein de trucs qui ne rêvent que de te bouffer tout cru
JBM: juste le temps entre load html et ready applet minimal de n'importe quelle applet
Zorg1: oui j'ai souvenir d'un chef de projet qui avait essayé des applets JAva, finalement il est revenu à des clients lourd python+tk
JBM: python? a l'epoque des applets?
dbdr: t'as le startup aussi
JBM: super precurseur pour un chef
Zorg1: en 2000, python 1.5
JBM: je dis pas que ca existait pas
JBM: juste que c'etait ultra pas mainstream
dbdr: meme aujourd'hui java c'est pas génial pour une tache qui dure 20ms en C
Zorg1: bah sur la mission où j'étais
Zorg1: on faisait des surcouche à clearcase en python
Zorg1: après oui on avait un ou deux visionnaires qui avaient poussé ça
dbdr: ça me rappelle quand j'étais passé #1 sur uTTT avec mon minimax en Java
Zorg1: dbdr : après si t'as besoin que ta tâche soit fait en 20 ms, vaut mieux éviter Java
dbdr: j'avais trollé rec*rse avec un "java c'est rapide"
dbdr: ou alors en mode client serveur
Zorg1: ah c'est depuis ce temps là qu'il embarque ses NN dans du python ?
dbdr: je pense pas que ce soit lié
dbdr: de fait ça a rien a voir, c'était vraiment du java
Zorg1: ça me rappelle mon bazar en go sur UTTT
dbdr: oui, on était les deux seuls non-C++ à des kolimètres :)
dbdr: je corrige pas la typo, c'est joli
Zorg1: y avait pas un gars en C# ?
dbdr: non-C.* disons :)
Zorg1: en plus je crois que la gestion de mon arbre MCTS peut être amélioré
Zorg1: je représente mon arbre avec des noeuds avec des liens pere/premier fils/frere :D
dbdr: chaque noeud est alloué séparément?
Zorg1: ouaip (enfin je crée un tableau de noeud)
Zorg1: et j'utilise aussi ça pour gérer ma liste de noeuds libres
dbdr: le tableau contient des noeuds ou des references vers des noeuds?
Zorg1: les noeuds
dbdr: ah, donc ils sont contigus
dbdr: du coup c'est bien pour le cache
Zorg1: au début oui, mais peut être pas après qq cycle d'alloc/dealloc
Zorg1: vu que je reutilise une partie de l'arbre d'un tour à l'autre
Zorg1: honnêtement faudrait que je teste d'autre implém pour voir si je gagne ou pas
dbdr: çá dépend à quelle échelle on parle
dbdr: tu changerais quoi?
Zorg1: j'essaierais d'allouer par bloc de noeuds
Zorg1: pour être sûr que tous les frères soient contigus
dbdr: ça dépend aussi si tu stocke les stats dans le parent ou le fils
dbdr: +s
Zorg1: ah oui pas faux
dbdr: si c'est dans le parent la contiguité est pas un pb
Zorg1: après je pense qu'en perf pure je serais toujours derrière un C/C++ bien fait
dbdr: mais les noeuds sont plus gros
dbdr: ben si tu alloues pas, pas de GC
dbdr: donc pas forcément
dbdr: ou la passe d'optim de goc est pas top?
Zorg1: mais au moins l'intérêt de Go c'est que je me suis concentré sur l'algo, l'implém, ... pas les subtilités du langage
Zorg1: bah le compilo go est surtout pensé pour être rapide à la compilation
Zorg1: il fait des optims mais c'est pas vraiment son point fort
Zorg1: après quand je veux être sûr qu'une fonction soit inliné, bah je copie/colle
Zorg1: (mais de version en version le runtime et le compilo sont améliorés)
dbdr: -Zorg3 il fait plus d'optims que -Zorg1? ;)
Zorg1: oui mais ça peut générer des randoms bugs
Zorg1: il optimise parfois en virant du code :p
Zorg1: c'est sûr c'est plus rapide quand tu fais l'impasse sur la récursion
Zorg1: "QUOI en plus de plus rapide tu voulais aussi que ça soit aussi correct ? MAIS JE REVE"
dbdr: la réponse est incorrect, mais elle arrive rapidement
dbdr: c'est un compromis comme un autre
Zorg1: ;-)
dbdr: "il aurait fallu mille ans à milles mathématiciens pour faire une aussi grosse erreur"
Zorg1: faut prendre des physiciens c'est plus rapide. Quoiqu'ils ont l'air de toujours retomber sur leurs pattes avec toutes leurs approximations
Zorg1: surtout en Chimie, jamais compris
dbdr: supposons que la concentration finale de SO2 est faible. (pleins de calculs) donc la concentration finale de SO2 est faible.
dbdr: c'est bon, les calculs sont corrects
Zorg1: et en fait on a une solution de vinaigre
Zorg1: CQFD EZPZ
Zorg1: y a des gens qui étaient doués en Chimie. J'en faisais pas partie
dbdr: moi non plus
dbdr: et maintenant je la de la chemoinformatique :D
dbdr: mais bon, j'ai besoin que d'un bout tres spécifique de la chimie
Zorg1: celui qui péte ?
dbdr: :D
dbdr: non, ça c'est pour les TPs
Zorg1: en prépa, on faisait surtout des batailles de pissettes
Zorg1: après tu faisais bouillir des trucs au bec bunsen
Zorg1: et t'essayais d'écrire sur un cahier mouillé
Zorg1: après c'était toujours marrant quand le prof de physique te faisais comprendre que ça le faisait bien ch*er la chimie ^^
Zorg1: mais bon ça doit être comme les formules de trigo en math, on a pas (encore?) trouvé mieux pour emmerder les étudiants
leojean890: donc niveau perfs Elexir est bien ainsi que Rust par ex ? Rust il parait que c'est performant et en même temps avec une syntaxe sympa;P
leojean890: mais que sur CG c'est pas pratique
leojean890: et oui clairement il faut faire gaffe à la complexité algo, bah en python je fais gaffe sinon je prendrais cher sur CG depuis le début ^^
Zorg1: euh non pas du tout
Zorg1: Elixir ça tourne sur la vm d'erlang
leojean890: ah ok:P
leojean890: j'lisais qq messages de quand je suis parti :P
leojean890: et ceux de la fin, ouais en effet la chimie ça déplait souvent aux MP :P
leojean890: et aux profs de physique de MP;)
leojean890: "la chimie c'est de la cuisine" qu'il disait :P
JBM: ca me rappelle les parodies mongodb votre discussion
JBM: "sure it sometimes loses shards, but it's SO FAST"
leojean890: alors vous le faites ce contest non officiel ?:P
leojean890: y'a pas mal de gens entre +400 et +1400 là déjà:P
JBM: j'aurais pu le faire s'il avait fait un choix interessant
leojean890: non plus mais j'regarde ce que ça donne:p
leojean890: pr2 ça va j'aime bien mais sans plus par rapport à d'autres
leojean890: hehe
leojean890: j'me suis tellement fait descende en 2j sur tvc mdr
JBM: ben t'as une IA de plouc aussi
leojean890: j'vais tenter le submit voir où ça m'amène xD
leojean890: j'aimais bien rester dans le top 5 pendant lgtps:p
leojean890: j'y crois en les IAs avec 5 if :P:P
leojean890: ah mais attnds
leojean890: t'as changé la règle xD
leojean890: donc j'px pas gagner car timeout
leojean890: lol
leojean890: ValueError: too many values to unpack (expected 2)
leojean890: niveau modifs de règle tu t'es fait plais :P
JBM: ça t'apprendra à pas lire le statement
leojean890: bah j'ai l'habitude des statements fixes moi pas des contribs :P
JBM: et perdre ton opportunité d'influencer le monde?
JBM: tiens j'étais pas venu geeker depuis ce PC depuis pac
leojean890: influencer ?
JBM: plus spécifiquement depuis mon dernier stream pac
leojean890: le fait qu'une contrib ça influence le futur de CG ?
leojean890: pas faux hehe
JBM: d'influencer le jeu final
JBM: c'est ça la vraie manière d'influencer le monde
leojean890: ah ouais le fait de faire des suggestions ;)
leojean890: pendant la phase de créa
Zorg1: ça serait bien si on pouvait lancer des torpilles sur le troll
JBM: ça c'est une suggestion digne du forum
JBM: que je t'invite à remplir
Zorg1: ok j'y vais, j'ai aussi une remarque à y faire au sujet d'un bug dans descent
leojean890: OOC power
leojean890: tiens les submits sont pétés ?:P
kami: oui un peu :(
leojean890: p'tet que bcp de monde participent au unofficial finalement ;)
kami: ;)
leojean890: dans tvc mon submit ne fait rien ;P
Zorg1: "tvc ne répond plus" une aventure de leojean890 dont vous êtes le héros :p
leojean890: true story et d'après ce que je comprends de kami c'est tout CG :P
leojean890: à cause des submitters de PR2 :P
leojean890: ah ouais mais c'est parce qu'il n'y a pas de ligues aussi ptet ?
leojean890: j'suis pas sûr que ça ait un impact
leojean890: plus d'ias à reclasser sans arrêt donc plus de calculs donc..
leojean890: selon comment c'est codé ça peut jouer ;p
leojean890: c'est pour ça qu'ils veulent pas faire de rerun avec trop d'ia d'un coup
leojean890: pacman pourtant c'était la même avec des ligues overcrowded
leojean890: et après le premier week-end ça allait
leojean890: tiens et si je tentais de combiner SA et GA dans A*C pour améliorer mon #110 xD
Zorg1: The Smiley Unofficial ChampionShip
leojean890: bah là j'ai mis xD ça change hehe
leojean890: submit tjr pété
BigUP: je suis etonné par mon AG, j'ai rarement beaucoup d'ecart entre mon meilleur individu et ma population
BigUP: au niveau du score
leojean890: ah tiens le submit remarche et je suis remonté 6eme
leojean890: bon bah j'ai eu raison de submit en corrigeant mon instacrash ;P
BigUP: voir meme sur 1 génération, mon meilleur individu a le meme score que la moyenne de la population
BigUP: parfois
leojean890: tkt bigup j'cherche à bosser sur une simu de csb là et c'est la galère, 10*plus dure que toutes les autres faites jusqu'à mtn
BigUP: leojean890, ca depend si tu gère 1 runner et un blocker
leojean890: sachant que j'ai bien 15 simus sur les sujets cg et le reste c'est juste heuristiques
BigUP: leojean890, tu peux partir du PM de Magus
leojean890: ouais c'est ce que j'ai fait j'ai lu mais j'ai pas trop envie de copier xD
leojean890: mais tout ce qui n'est pas collisions ça va
BigUP: leojean890, c'est surtout la simu qu'il faut copier
leojean890: oui justement jvoulais pas trop:P
leojean890: mais je suis tenté quand même xD
BigUP: leojean890, sinon tu reecrit la simu du referee
leojean890: ouais :P
leojean890: bah j'vais voir, je vais surement copier une partie, faire le reste
leojean890: car une fois la simu dispo j'vais pouvoir m'amuser avec les algos de recherche
leojean890: mais tout ce qui est pas "collisions elastiques" (le "bounce" de magus) je peux probablement le faire seul en prenant mon temps;p
leojean890: sinon ouais le référée clairement
BigUP: je cherche de l'inspiration pour la fitness de mon AG sur SR
BigUP: a part distance au next checkpint + bonus passage de checkpoint, je ne vois pas trop quoi faire pour améliorer
leojean890: tu fais pas "nbCheck*10000 + distance*100 + des trucs pour que le bloqueur soir sur le checkpoint adverse ?
leojean890: j'viens de lire les PM de jeff06 et magus de csb
BigUP: leojean890, je suis en heuristic sur CSB
leojean890: ils ont ce genre d'heuristiques
leojean890: ah ok d'ailleurs t'es légebde ?
leojean890: légende
BigUP: leojean890, oui, j'ai juste porté les fonction trigo + collision de magus en python
leojean890: moi aussi heuristique mais 261 gold
leojean890: d'accord
leojean890: maus au lieu de simu tu te sers de ces infos
BigUP: histoire de pouvoir effectuer une pseudo simu pour déterminer les collisions
leojean890: pour faire des heuristiques
leojean890: d'acc sympa aussi
BigUP: leojean890, j'ai un runner qui essaye d'optimiser les trajectoires et un blocker qui lui prend les trajectoires securisées et block a l'occcasion s'il est à la traine
leojean890: ah ouais sympa
leojean890: un qui prend optimal et l'autre safe
Zorg1: c'est quoi ça une "trajectoire sécurisée" ?
leojean890: = loin des collisions
BigUP: leojean890, je calcul le meilleur point d'entrée ou point de sortie sur le cercle du checkpoint en fonction du CP suivant
leojean890: : sécurisée
BigUP: leojean890, sécurisé, j'essaye de taper le milieu du CP plutot que viser un point sur le cercle du CP
leojean890: ah oui car celui sur le cercle tu peux le rater
leojean890: -3vel :P
BigUP: Sur les maps ou mon runner la joue trop optim de traj, c'est le 2eme runner qui rattrape le coup :)
leojean890: j'ai essayé de hardcoder un bloqueur
leojean890: et j'ai perdu des places
leojean890: avec mon code actuel => 240
leojean890: puis hardcoder bloqueur => 550
leojean890: puis de nouveau meme code => 260 (moins bonne loterie du submit):P
leojean890: d'accord je vois
BigUP: leojean890, souvant tu te rend compte que ton blocker gène ton runner
leojean890: c'est sympa ton approche:p
leojean890: ouais j'ai essayé des trucs pour éviter ça
leojean890: j'ai essayé de le faire viser le next cp adverse
leojean890: lui*
leojean890: ou si je vise le même cp que l'adv
leojean890: dans ce cas viser le n+1
BigUP: c'est pour ca que j'evite de de blocker, c'est juste a l'occasion s'il voit qu'il peut taper un adversaire
leojean890: ou viser direct les coord de l'adv
leojean890: ou en fct de son vecteur vitesse viser "juste devant lui"
BigUP: et qu'il est a la bourre
leojean890: je vois
leojean890: heuristiques bien peaufinées :P
BigUP: j'ai fait au mieux, mais j'ai galéré avant de passer legende ! ;)
BigUP: ce qui est important c'est que tes pods ne se genent pas
leojean890: ouais ;P
leojean890: t'es combien en légende ?:P
leojean890: du coup sur SR tu vas encore améliorer ça mais en enlevant tes heuristiques de collisions quoi :P
BigUP: les trajectoire de mon runner au final sont pas trop mal optimisées parce que j'ai pas tellement amélioré sur SR. A part 2/3 tweak lié au fait qu'il n'y a plus d'adversaire, dès que je touchais à une valeur j'avais tendance a perdre des places
leojean890: ah ouais
BigUP: PR2 en challenge !?? Ha ...
leojean890: tu l'as fait lui ?:P
leojean890: tiens faut que j'regarde si leurs submits m'ont fait chuter xd
leojean890: j'étais 375 ce matin :P
leojean890: bon je regarderai plus tard il a le temps de chuter encore en une sem:p
BigUP: oui, mais je ne sais plus ce que j'ai comme code... Je crois que j'ai passé pas mal de temps a essayer d'améliorer le random moisi que j'avais submit au début
BigUP: bon j'ai rien compris au contest sur PR2 parcontre
leojean890: tu m'avais dit que tu submittais des random xd
leojean890: et ensuite quand t'as la motiv tu rebosses dessus
BigUP: leojean890, ca m'arrive sur les multi non officiel ou j'ai pas envie de passer du temps
leojean890: moi quand j'ai pas envue de passer du temps souvent je submit pas du tt :P
Zorg1: bigup : ah oui marrant au début tu sèmes mon runner qu'a du mal à te suivre, puis d'un seul coup mon blocker décide de faire son boulot ... ;-)
Zorg1: https://www.codingame.com/replay/471247264
BigUP: Zorg1, oui mon runner se démerde ;)
BigUP: Zorg1, sur certaines maps il se rate parcontre, mais c'est souvant mon 2eme runner qui rattrape le coup
leojean890: BigUP le contest PR2 c'est avec 2 LB : le classement du multi
Zorg1: en fait c'est le blocker qui me fait gagner la course
b0n5a1: https://store.steampowered.com/app/406970/The_Uncertain_Last_Quiet_Day ... et sur epic games c'est uncooked le gratuit depuis hier
leojean890: et le classement par nombre de places gagnées depuis ce matin
leojean890: b0n5a1 comme BigUP lgd csb sans simu:P
leojean890: uncooked = code à la mode ?
b0n5a1: ouais
leojean890: sujet que j'ai pas fait
BigUP: leojean890, je ne pige pas comment marche ce contest PR2, c'est juste un classement de ceux qui se sont inscrit sur le PR2 de CG ?
leojean890: faut t'inscrire avec le gars qui orga
Zorg1: b0n5a1 : sur gog t'as total annihilition qu'est gratuit mais c'est un vieux jeu ;-)
leojean890: https://thibpat.now.sh/contest/unofficial-codingame-contest
leojean890: thibpat son pseudo
b0n5a1: Zorg1 il esst top ce jeu !
b0n5a1: je l'avais fut un temps
BigUP: Zorg1, t'es 2 runners se rentrent dedans au départ
BigUP: tes
Zorg1: bigup : en position central c'est assez classique
BigUP: je crois que les miens se laissent la priorité. 1 des 2 coup son moteur s'il voit que ca v atoucher
Zorg1: mais j'aime bien comment mon blocker prépare son mauvais coup et coupe la route franco à ton runner ^^
BigUP: coupe
BigUP: Zorg1, en plus juste avant il fait rater sa traj a mon 2eme runner
BigUP: Bon en meme temps, je crois que mon 2eme runner n'en a plus rien a faire de la course ;)
BigUP: Il vise ton Runner ;)
Zorg1: en fait il choque ton second runner pour faciliter son changement de direction le petit salaud ...
BigUP: oui c'est ce que j evois
b0n5a1: j'y ai pensé récemment à total annihilation en plus ^^
b0n5a1: bonne nuit
Zorg1: bn