Chat:Fr/2020-06-05

From CG community
Jump to navigation Jump to search

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?

Default avatar.png JBM: PR2 l'unofficial?!

Default avatar.png JBM: mouarf

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

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

Default avatar.png NoiselessSnowflake_c451: hi

b0n5a1: o/

Zorg1: \o

b0n5a1: c'est vraiment exactement PR2 le truc non officiel ? (jamais touché à celui là)

Default avatar.png JBM: c'est tellement exactement lui que ca se passe sur la meme page

b0n5a1: arf, ok

dbdr: PR2.0

Default avatar.png JBM: drole de choix quand meme

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

Default avatar.png JBM: oui

Default avatar.png JBM: d'une certaine maniere, il est donc super naze

dbdr: ya que les vieux croutons qui l'ont fait en contest ;)

Default avatar.png JBM: perso je l'ai pas fait

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

Default avatar.png JBM: avec demi-impulsion

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

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

Default avatar.png JBM: oui mais c++

Zorg1: ET LE PRAGMA QUI VA BIEN

Zorg1: (qu'est ce que j'ai à hurler comme ça moi)

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

Default avatar.png JBM: voire "instable"

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

Default avatar.png JBM: j'aurais appele ca plus slim que java de la meme epoque

Default avatar.png JBM: et dieu sait que...

dbdr: Java le langage il est pas énorme

Default avatar.png JBM: non

Default avatar.png JBM: c'est l'etat d'esprit

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

Default avatar.png JBM: juste le temps entre load html et ready applet minimal de n'importe quelle applet

Default avatar.png JBM: java c'est LENT

Default avatar.png JBM: ca vient de la

Default avatar.png JBM: et c'est jamais parti

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

Default avatar.png JBM: python? a l'epoque des applets?

dbdr: t'as le startup aussi

Default avatar.png JBM: super precurseur pour un chef

Zorg1: en 2000, python 1.5

Default avatar.png JBM: je dis pas que ca existait pas

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

Default avatar.png JBM: ca me rappelle les parodies mongodb votre discussion

Default avatar.png JBM: "sure it sometimes loses shards, but it's SO FAST"

leojean890: alors vous le faites ce contest non officiel ?:P

Default avatar.png JBM: perso non

leojean890: y'a pas mal de gens entre +400 et +1400 là déjà:P

Default avatar.png JBM: j'aurais pu le faire s'il avait fait un choix interessant

Default avatar.png JBM: mais PR2...

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

Default avatar.png JBM: tvc!!!

leojean890: hehe

leojean890: j'me suis tellement fait descende en 2j sur tvc mdr

Default avatar.png JBM: ben t'as une IA de plouc aussi

Default avatar.png JBM: fix it

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

Default avatar.png 154906: 154906?

Default avatar.png JBM: forcément

Default avatar.png JBM: ça t'apprendra à pas lire le statement

leojean890: bah j'ai l'habitude des statements fixes moi pas des contribs :P

Default avatar.png JBM: et perdre ton opportunité d'influencer le monde?

Default avatar.png JBM: tiens j'étais pas venu geeker depuis ce PC depuis pac

leojean890: influencer ?

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

Default avatar.png JBM: mais non patate

Default avatar.png JBM: d'influencer le jeu final

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

Default avatar.png JBM: ça c'est une suggestion digne du forum

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

Default avatar.png JBM: :-P

Zorg1: The Smiley Unofficial ChampionShip

leojean890: bah là j'ai mis xD ça change hehe

leojean890: submit tjr pété

Default avatar.png JBM: Rha tu m'as bien feinté

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