Chat:Fr/2020-07-18

From CG community
Revision as of 11:01, 15 June 2021 by Chat Log (talk | contribs) (Created page with "<img src=/a/43354386183081> 257832: Yo tout l"monde ! Automaton2000, AutomatonNN ! <img src=/a/40502547358772> AutomatonNN: a coup de contest de CG <img src=/a/4050266211826...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

257832: Yo tout l"monde ! Automaton2000, AutomatonNN !

AutomatonNN: a coup de contest de CG

Automaton2000: d'ailleurs je sais pas j'ai pas fait un truc en c++

dbdr: Yo, BlaiseEbuth

dbdr: 237, dwarfie

Stilgart: bonjour à tous

Stilgart: AutomatonNN: tu attaques à coup de contest CG dès le début du week-end maintenant ?

AutomatonNN: oui j'ai pas compris ce que tu veux dire

Stilgart: AutomatonNN: je voulais dire licorne ;)

AutomatonNN: ou Automaton2000 de manière générale :D

dbdr: Yo Stilgart, tu es sorti de la phase panique?

Zorg1: Bonjour à tous et aux bots distingués Automaton2000 & AutomatonNN

Automaton2000: le seul cas que je ne pige pas comment je dois le prendre

AutomatonNN: ou plus tortue de toute façon c'est pas un problème de contest de contest que tu as des chances de t

Default avatar.png JBM: ne paniquez pas

dbdr: code blue, code blue!

Zorg1: bah si c'est géré comme au boulot au tous les problèmes y compris les + insignifiants sont urgents ...

dbdr: ça simplifie la décision

dbdr: def isTopPriority(issue) {

 return true;

}

Zorg1: "j'ai préféré réglé ton pb de couleur de bouton urgent plutôt que le fait que l'appli crashe quand t'essaie de modifier un champs, c'est plus facile pour moi. bisou ^^"

dbdr: https://www.youtube.com/watch?v=mokllJ_Sz_g

Zorg1: ^^ c'est vrai 90 degrés pour un angle droit ça fait mesquin

dbdr: mais c'est divisible par 3, le manager doit bien voir ça

Zorg1: bah le manager doit faire l'état d'avancement à des gars qui sont encore plus stratosphérique que lui ;-)

dbdr: https://i.snipboard.io/7WdSgZ.jpg

dwarfie: toutes ressemblances avec des personness ou des faits reels n'est pas fortuite :D

dbdr: bon, ya un moyen de parser des ints de facon compacte en C#?

Stilgart: en changeant de langage, ça doit être faisable :)

Zorg1: ça sent le golf ...

dbdr: quelle idée :D

Stilgart: plus sérieusement, j'en sais rien, j'ai ...

Stilgart: ... jamais golfé du C#

Zorg1: moi c'est + simple j'en ai jamais fait ^^

dbdr: je n'ai jamais non-golfé du C#

Zorg1: c'est bon on a les 3 ours de boucle d'or en version C# ^^

dbdr: lol

dbdr: il manque le 4ème des 3 ours

Stilgart: Automaton2000: fais l'ours

Automaton2000: et on n'a pas encore fait de la merde

dwarfie: :D

Stilgart: :D

Zorg1: tkt Automaton2000 on y travaille

Automaton2000: il a pas fait une simu ?

Zorg1: nope on préfère les heuristiques pour ça

dbdr: Cannot assign lambda expression to an implicitly-typed variablecsharp(CS0815)

dbdr: ben tiens

dwarfie: et pendant ce temps la , ce roublard de dbdr qui m'a remis des char en plus dans la vue en python 3 :D

dbdr: oui mais je me suis refait doubler après

dbdr: et surtout passé devant en Java

dwarfie: meuh ....

pardouin: moi je suis passé 12ème en Golf

pardouin: merci le reset de Thor

pardouin: je suis 3ème en C#, langage que j'ai jamais utilisé de ma vie, c'te blague !

dbdr: je le dis toujours

dbdr: c'est plus facile de golfer dans un langage qu'on connait pas

dwarfie: et vlan ... égalité en java

dbdr: gg

dwarfie: j'avais pas pense le faire comme ca , ca va me servir ailleurs ;)

dbdr: moi c'est quand j'ai gagné 15 chars que je me suis dit ça :D

dwarfie: devant ... mais j'aurais du voir y'a 5 minutes ce char en trop :D

dbdr: gg

darkhorse64: J'y connais rien en Java (en PHP non plus d'ailleurs). C'est la partie import/class/main/parsing qui prend de la place, le code utile, c'est peannuts

dwarfie: ah non , ca valide pas ... bizarre, ca marche en C pourtant

dbdr: fail :D

dwarfie: epic fail meme

darkhorse64: Scanner i=new Scanner(System.in) comment peut-on faire aussi verbeux ?

dbdr: var i=...

dbdr: avec la bonne version de java

pardouin: la saisie des inputs en Java et en C#, un bonheur

pardouin: la moitié de tes chars y passent

darkhorse64: C++ cin << x << y << X << Y, c'est mieux non ? La moitié ? C'est que le reste est trop long !

pardouin: au final Thor ils ont changé les validateurs à cause du Nord qui n'était pas utilisé mais les validateurs restent très "asymétriques"

darkhorse64: Ca change rien pour les déplacements E/W

pardouin: ils auraient du mettre un validateur avec un angle proche de la verticale

dbdr: 216

darkhorse64: Il y en a un dans le jeu de tests. 216, c'est abusé

dbdr: :D

pardouin: 216 quel langage, quel puzzle?

dbdr: C#, Thor

darkhorse64: 214

pardouin: 215 moi

dbdr: 215

pardouin: je suis le seul couillon à récupérer les entrées comme ça ou il y a plus rapide : var i=Array.ConvertAll(Console.ReadLine().Split(),int.Parse) ?

dwarfie: 206 ... pas désolé ... :D

dbdr: tu as submit? ;)

dwarfie: et non , t'es pas le seul , j'ai la meme

dwarfie: dbdr ... cette fois oui ;)

pardouin: j'ai cherché à utiliser la déconstruction mais il faut un tuple

darkhorse64: C'est bien ce changement de validateur, j'ai fait le plein de points, 990+ / 1000. La même

pardouin: en hardcode ou en legit dwarfie?

dwarfie: legit

pardouin: (je compte pas le E-W non utilisé comme hardoce)

pardouin: code*

pardouin: bash?

dwarfie: non puisque j'utilise le meme parsing que toi ;)

pardouin: oui c'est vrai

dbdr: dwarfie, désolé ;)

dbdr: merci pardouin

dwarfie: pfff ... juste parce que pardouin t'as donné son parsing ...

dbdr: exactement

pardouin: :)

dwarfie: profite des erreurs des debutants ;)

dbdr: :innocent:

dwarfie: j'etais sur que ca allait le faire

pardouin: si tu avais une méthode miracle pour la "partie logique" tu serais plus haut que moi en JS

dbdr: enfin pas juste parce que, vu que je suis devant toi

darkhorse64: Pour l'inspiration, il y a les solutions publiées

dbdr: le golf est publié? :D

pardouin: j'avais trouvé un hardcode de don't panic comme ça

pardouin: haha

darkhorse64: mais non, les puzzles

dbdr: ce serait l'erreur bete :D

dbdr: pardouin tu parlais du JS pour qui?

pardouin: pour dwarfie

pardouin: il est à 101 chars

dbdr: noob

pardouin: ou bien il a un parsing dégueu

dwarfie: degueu ... pas du tout

dbdr: degueu, en golf? ;)

pardouin: on se comprend :D

dbdr: oui

dbdr: ah, j'étais bête

Default avatar.png JBM: tu le seras moins ce soir

dbdr: deja fait

pardouin: d'ailleurs sur des forums de golf j'ai vu des gens qui utilisaient des => pour print

dbdr: je peux aller me recoucher

pardouin: mais ça a pas l'air de marcher sur CG

dbdr: lien pardouin?

dbdr: parfois en golf les IO sont pas spécifiés

dbdr: genre une fonction qui retourne la valeur, plutot qu'un print

pardouin: oui

pardouin: _=>"truc à afficher"

dbdr: c'est valide que si c'est pas vérifé automatiquement comme sur CG

pardouin: et sinon je vois beaucoup de print"truc"

pardouin: mais ça doit être une vieille version

Default avatar.png JBM: que si c'est pas verifie "par I/O"

dbdr: JBM fix ton perl plutot ;)

pardouin: dbdr ton 92 JS il est legit?

dbdr: tout à fait legit

pardouin: ok

dbdr: tiens, mon 91 aussi, du coup

dbdr: merci encore :D

dwarfie: bon ... pardouin ... :door:

dwarfie: tu l'aide de trop :D

dbdr: une optim trouvée dans un autre langage que j'avais pas reporté sur JS

dbdr: là il a pas dit grand chose qd meme

dbdr: ça m'a juste fait reregarder mon JS

pardouin: je viens de découvrir les ?? en C#

pardouin: je pensais gagner des chars mais en fait non -_-

dbdr: tu as des nuls?

pardouin: juste pour un petit passage

Zorg1: ah t'as des opérateurs genre !! ?? ?! ** en C# ?

dwarfie: ouais mais ils sont pas foutu d'avoir le spaceship ... et pourtant ca m'aurais bien servi ailleurs ...

dbdr: ça vaut pas le turbofish non plus

dbdr: https://turbo.fish/

pardouin: ah tiens je connaissais pas dwarfie, je vais regarder ça pour le C++

dbdr: spaceship c'est pas en perl?

dbdr: ah, C++ 20

dbdr: CG supporte pas encore, si?

pardouin: sais pas

pardouin: en python il y a pas mieux que while 1: ?

dbdr: je sais pas, mais j'ai un while 1:

Suez17: j'ai remarqué que dans CoC où il faut faire le moins de lignes de code on est plus ou moins avantagé en fonction du langage

dwarfie: c'est le moins de char , pas le moins de lignes ... mais oui , faut souvent choisir le bon langage

Suez17: oui le nombre de caractères effectivement

dwarfie: et le gag , c'est que certains font des sujets minables qui utilisent une fonction native de python qu'ils ont découvert et que c'est souvent dans un autre langage qu'on fait plus court :D

Suez17: ah clairement ceux qui prennent Python sont souvent en première position dans ce mode

Suez17: genre moi je prend Java, je fais 300 caractères, ils font la même avec 25 caractères wtf haha

dbdr: d'où l'intéret du golf

dbdr: chaque langage est noté séparément

Suez17: ahh je savais pas

dwarfie: le probleme c'est que (beaucoup) trop de sujets de CoC passés l'année passée étaient clairement orienté python ...

dwarfie: mais heureusement ... bash rulez da world

dwarfie: :D

Suez17: sûrement dû à l'explosion de l'intérêt pour ce langage ces dernières années

piwai: hello

piwai: je débarque mais il y a eu des changements de validateurs dans power of thor?

Zorg1: ou à son statut de langage d'apprentissage

**dwarfie ne donnera pas son avis sur la reponsabilité des faineants qui l'enseigne ...

Zorg1: piwai : oui

piwai: merci , effectivement le test2 s'appelle "Nord" :D

Suez17: oui beaucoup de gens disent que c'est un langage facile d'accès au débutant

Suez17: J'ai envie de me pencher dessus mais venant de Java, j'ai un peu de mal avec sa syntaxe, mais bon il suffit de s'habituer

dwarfie: et ils restent debutants ... pire gag de cette année "humm , c'est dur ... j'y arrive pas ... le for en python c'est mieux et plus facile qu'en bash" ... chercher l'erreur , ca marche pareil ...

Suez17: hum ouai je vois

dwarfie: et en plus , va leur faire comprendre la difference entre une string , une liste , un tableau quand ils ont pris l'habitude de laisser l'interpreteur se foutre du typage ...

dwarfie: :duck:

Suez17: c'est vrai que si je devais conseiller un langage ce ne sera pas un langage interprété, perso j'ai commencé sur du C qui je pense est un bon langage pour commencer

Suez17: typage fort, gestion manuel de la mémoire etc

Suez17: après faut apprécier les pointeurs haha

pardouin: regardez le classement Python de Don't Panic :DDDDD

Thyl: Ouais 50% au Bridge 2 ça avance !

dwarfie: ouais ... ou ca tombe dans le trou ;)

Suez17: en tout cas la France est bien représenté :grin:

pardouin: ben c'est un site français, donc ça aide :)

Zorg1: un peu normal pour un site intialement français ...

Suez17: haha ouai

Suez17: mais ça reste ouvert au monde

dbdr: joli pardouin

Thyl: Help

pardouin: je pensais pas utilise un jour la chaîne de caractères 'i¡š“¯' dans un script XD

Thyl: sur le mot cle continue

pardouin: utiliser*

pardouin: oui thyl?

Thyl: quel est le raisonement

Thyl: ex

Thyl: j'ai 2 boucles imbriqué (qui vont voir dans l'arbre des possibles)

pardouin: break ça casse la boucle, continue àa passe direct à l'itération suivante sans exécuter ce qui est après continue

pardouin: ça coupe que la boucle en cours

Thyl: oui sauf

Thyl: que

Thyl: j'ai une if

pardouin: si tu veux sortir des deux boucles il te faut un petit drapeau

Zorg1: un label ?

pardouin: boucle = while ou for, ça ignore les if bien sûr

Thyl: en faite j'ai une func qui regarde si les coups sont bon

Thyl: sinon elles renvoie False

pardouin: par exemple sortir = True et tu fais if sortir: break à chaque niveau

Thyl: j'ai une if pour tester le False

Zorg1: si t'envoyais le code qui pose problème

Thyl: Attention il est hyper bizar !

Zorg1: parce que là on bosse un peu dans l'air

Thyl: for tour2 in possibilites(): http://chat.codingame.com/pastebin/95eb4e9e-905b-4bd7-b2c0-b84f00c1a9d8

pardouin: si tu es dans une fonction tu peux utiliser return, ça fait une sortie anticipée quel que soit le niveau d'imbrication

Thyl: plus complexe

Thyl: je stock mon generateur return une tuple

Thyl: (fonction, est coup)

pardouin: (je vais manger sorry)

Thyl: du coup je trouve la fonction par indexation

Thyl: (pardouin je crois que t's pas le seul)!

pardouin: en tout cas utilise un booléen qui te dit si tu dois break/continue, en général c'est comme ça quo'n gère ces imbrications

Zorg1: ou tu poses un label sur les boucles et tu fais un continue ou un break avec le nom de ce label (dans certains langages, pas sur que python ait cette fonctionalité)

Zorg1: ce qui est + simple qu'utilisé un booléen, qui peut franchement alourdir le code

Zorg1: je me souviens quand des staliniens du code nous avaient imposé un seul return par fonction, ok tu te débrouillais avec un flag mais ça rend le code un peu lourdingue

Zorg1: après c'est vrai que break/continue/return sont des goto déguisés

Thyl: je crois qu'en python ça s'appelle coroutines

Zorg1: euh non je ne crois pas ;-)

Zorg1: t'es en train de mélanger des concepts là à mon avis

Thyl: aaaa.

Thyl: en tout cas j'en peux plus

Thyl: je fais un if pour vériiais si c'est faut

Thyl: est la c'est faux

Thyl: et le if il marche pas ....

pardouin: remets ton code et explique exactement le comportement attendu

pardouin: et sinon est-ce que tu connais la syntaxe for :... else:...

pardouin: peu de gens connaissent

pardouin: en gros ce qui est écrit après le else ne s'exécute que si le for s'est exécuté jusqu'qu bout sans break

pardouin: ça marhe aussi avec while, c'est pratique dans certains cas, ça évite les drapeaux ou autres

dwarfie: :scream:

Thyl: Trop bien !

Thyl: merci pardouin !

Thyl: la je fais du nettoyage:grinning:

dwarfie: trop bien !? ca n'a pas de sens ... un else qui s'execute si tout s'est bien passé !!!!

**dwarfie s'exile dans une autre dimension ou python n'a jamais été bricolé ....

Zorg1: la nature ayant horreur du vide, tu risques de te retrouver avec un truc pire dans ta nouvelle dimension ...

Stilgart: fix ton dimension surtout

Stilgart: parce qu'à choisir, autant en prendre une sans python

Stilgart: ni java, ni javascript

Zorg1: "Dans la dimmension 12.34 les langages de programmation sont dominés par un mélange de Java, Fortran et Awk"

pardouin: c'est vrai que le choix de "else" pour ça est étrange

pardouin: ils auraient mis "nobreak" ou autre, ça passait mieux

dbdr: ça coute cher les keywords. faut pas gâcher

Zorg1: on utilise bien "static" pour dire variable/méthode de classe ...

Zorg1: le lien n'est pas super évident

dbdr: c'est hérité de C non?

dbdr: une variable statique existe en une seule copie, pas une par appel

dbdr: il y a une ressemble en plissant bien les yeux

Zorg1: oui ça vient du C

Zorg1: mais non ça fait "truc donc l'implémentation a donné le nom"

Zorg1: (un peu comme les fameux car et cdr de Lisp et consor)

dbdr: cons-or :D

Zorg1: ;D pas mak

Zorg1: *pas mal

Zorg1: j'ai un problème d'alignement de mes doigts avec mon clavier

dbdr: bouge le clavier

dbdr: https://www.scala-lang.org/api/current/scala/io/StdIn$.html

dbdr: object StdIn extends StdIn

dbdr: logique :D

Zorg1: m'ouais Scala

Zorg1: j'avais un peu regardé, ça m'a jamais tenté

dbdr: ya bcp de magie, non?

Zorg1: je ne sais pas, j'ai trouvé ça compliqué

Zorg1: tu balances des dev java de base là dessus j'ai bien peur que le résultat ne soit pas beau à voir

dbdr: clair

dbdr: arf, le vieux hack :D

Default avatar.png JBM: comment es ton re

dbdr: JBM, éclaire-nous sur l'historique de static

Zorg1: attend je mets mes lunettes de soudure

dbdr: *lunettes de cdr

Zorg1: oooo

Default avatar.png JBM: euh... ca vient de C comme t'as dit?

Default avatar.png JBM: il en faut plus?

dbdr: dis tonton JBM, y'avait quoi avant C?

Default avatar.png JBM: bcpl

Zorg1: hé hé

Default avatar.png JBM: et des langages pas trop tourne autour du concept de pile d'appel

dbdr: bcpl sans static?

Default avatar.png JBM: je sais pas, j'en ai jamais fait

dbdr: pff, le jeunot

Zorg1: y avait B entre BCPL et C

dbdr: c'est le "Before C Programming Language" ?

dbdr: quelle vision!

Default avatar.png JBM: b c'est advanced

Default avatar.png JBM: pardon avant C en francais

Zorg1: ça me rappelle les archives de l'empire romain avec "68 avant JC' :p

dbdr: joli

dbdr: les deux

Default avatar.png JBM: je dois tout a perusse

dbdr: mince, j'ai pasté un bout de golf dans google

Default avatar.png JBM: et maintenant google connait tes tricks

dbdr: in4 un googler top golfeur

dbdr: perusse faut découvrir?

Default avatar.png JBM: ah ben si t'as pas encore fait oui

Default avatar.png JBM: la decomposition b doit venir de la maison slangster

dbdr: ça a l'air pas mal

Default avatar.png JBM: ah perso j'adore

dbdr: c'est de la radio à l'origine?

Default avatar.png JBM: mais je sais pas si ca a bien vieilli

Default avatar.png JBM: oui

dbdr: ça me rappelle le minifilm dans la cité de la peur :)

Default avatar.png JBM: oui ^^

dbdr: purée le débit! :D

788361: amis de la peur et des cités o/

Default avatar.png JBM: essaie les versions quebecoises apres

dbdr: et la densité

Default avatar.png JBM: debit+accent, il me faut plusieurs ecoutes

dbdr: :scream:

788361: comment es ta québecois ?

dbdr: ya qqn aui vient de mettre un upvote sur youtube?

dbdr: de 103 à 105 c'est louche :D

Default avatar.png JBM: ah ca y est je l'ai

Default avatar.png JBM: puree pas trop tot

Default avatar.png JBM: https://youtu.be/7njsTmM-RRE?t=79 <https://youtu.be/7njsTmM-RRE?t=795>4

Default avatar.png JBM: mm j'espere que ca passe mieux sur le webchat que le xmpp brut

Bob: ça passe

dbdr: c'est bon à connaitre, merci JBM

dbdr: https://www.youtube.com/watch?v=PviZj7ogUlU

dbdr: la chaine est pas mal je trouve

Suez17: quelqu'un a réussi le puzzle ANEO ?

Zorg1: 7131 codingamers s'il faut en croire CG ^^

Suez17: lol je le trouve assez cocasse pour un niveau moyen

pardouin: trop facile tu veux dire ?

Suez17: pas pour moi ^^

Zorg1: après les niveaux ...

Zorg1: on va pas relancer ce débat stérile non plus

pardouin: :)

Suez17: oui c'est sûr, enfin je trouvais juste que celui-là est particulièrement difficile par rapport à d'autres niveaux moyens

Suez17: mais bon t'as raison les niveaux ont pas l'air si indicatifs sur les puzzles

pardouin: tu avais un problème de temps c'est ça ?

Suez17: oui c'est ça avec les feux, il faut trouver une vitesse moyenne pour passer tous les feux au vert sans s'arrêter

dwarfie: euh ... non en fait faut tester toutes les vitesses :D

pardouin: je vois bien le problème, j'ai ma solution sous les yeux

pardouin: je voulais dire, ton script mettait trop de temps ?

Suez17: hum non même pas je reste un peu bloqué sur l'algo

pardouin: déjà trie les entrées, ça aide

Suez17: les 4 premiers tests passent il sont assez simples pour 1 feu ^^ mais après..

Suez17: ouai je vais voir

Zorg1: comment ça trier les entrées ?

dwarfie: Zorg1 : je confirme , ca sert a rien de trier :D

pardouin: effectivement j'ai retiré ma ligne de tri et ça servait pas

pardouin: :)

Zorg1: voila vu que tu t'arrêtes pas tu peux considérer chaque feu comme un pb unique

Suez17: hum là ce que j'ai fait c'est de récupérer la vitesse max pour passer un feu N au vert en partant du point de départ

Suez17: en gros créer une liste de vitesse max pour chaque feu pour passer au vert

Suez17: après je voulais faire un moyenne de ces vitesses mais c'est pas ça du tout

dwarfie: alors que c'est tellement plus simple de "pour chaque vitesse en decrementant, voir si on passe tous les feux"

Suez17: oui bien vu ça a l'air beaucoup plus simple

Suez17: je vais tenter ça

dwarfie: apres , faut avoir un langage qui est assez performant pour pas timeout

Suez17: j'ai pris Java

dwarfie: alors ca devrait passer a l'aise ... je pense ...

Zorg1: oui java ça marche

Default avatar.png JBM: haha

Suez17: ok je tente ça

Suez17: :thumbsup:

dine-mok-el-mechoui: hola

pardouin: je l'ai fait en python donc pas de soucis

pardouin: o/

Default avatar.png JBM: dbdr: t'aurais pas moyen de faire ignorer les changements "ajout d'une page de logs" dans ton wiki?

Default avatar.png JBM: ca pourrit pas mal les "recent changes"

788361: comment es ton pourriture

Default avatar.png JBM: assez communiste en ce moment

Bob: <3

Bob: c'est marrant j'ai deux écritures possibles pour une triple boucle et je ne parviens pas à dire laquelle je préfère

Default avatar.png JBM: cherche-en une troisieme

Bob: v1

   for (let y = 0; y < grid.length; y++) {
     for (let x = 0; x < grid[y].length; x++) {
       for (let rotation = 0; rotation < 4; rotation++) {

Bob: v2

   grid.forEach((row, y) => {
     row.forEach((s, x) => {
       [0, 1, 2, 3].forEach((rotation) => {

Default avatar.png JBM: la version colorisee est plus jolie

Default avatar.png JBM: quoiqu'un peu palote sur ce theme clair

Bob: désolé ^^;

Default avatar.png JBM: perso en general j'aime pas trop les [1,2,3].for

Bob: je trouve la v2 plus élégante et moderne mais techniquement ça implique la création d'un petit lot de fonctions que la v1 ne fait pas

Default avatar.png JBM: et?

Default avatar.png JBM: l'optimiseur s'en charge pas?

Bob: aucune idée

Bob: c'est Node

Default avatar.png JBM: connais pas

Bob: (JS)

Default avatar.png JBM: ok je bluffe (un peu)

Bob: :p

Bob: disons que si la v2 implique un coût en perf qui pourrait s'avérer gênant sur des gros trucs, j'aimerais autant pas prendre de mauvaises habitudes

Bob: bon après je soupçonne que le jour où on se soucie de la perf, vaut peut-être mieux pas faire le backend en JS

Bob: après si le [0,1,2,3] inliné te défrise, je peux toujours fourrer un const allRotations = [0,1,2,3] dans un coin :)

Suez17: Question : est-il possible d'avoir ce message : http://chat.codingame.com/pastebin/dff00b3b-9812-4d3e-adb7-eeada024f3f9

Bob: oui

Bob: et d'ailleurs le message explique très bien pourquoi :)

Suez17: hum je n'ai mis aucune solution en dur :(

Bob: non

Suez17: je suis déçu

Bob: mais c'est pas ce que dit le message

lhm: Ce qu'il faut retenir "les validateurs sont différents de ceux de l'IDE"

Bob: il dit pas que tu es refusé parce que tu as hardcodé

lhm: Ce n'est pas parce que tu passes tous les tests de l'IDE que ta solution est correcte :)

Bob: il dit que les validateurs sont différents, pour éviter que des gens hardcodent

Bob: en général ce message sous-entend que les validateurs incluent un cas de figure qui n'est pas présenté dans les tests de l'IDE

Bob: et que ton code ne prend pas en compte non plus

Bob: ce qui à son tour sous-entend que le jeu de tests de l'IDE est incomplet :)

Suez17: hum oui je comprend enfin ça va être dur de trouver la faille du coup

Bob: à partir de là, soit tu as des replays des validateurs et là tu devrais arriver à voir ce qui cloche

Bob: soit pas et c'est plus moche :)

lhm: Pas tant que ça, parce que tu sais quel validateur a échoué quand même

lhm: En instrumentant ton code tu vas trouver

Bob: ouais mais bon si le validateur il s'appelle "Validator 4"...

lhm: ah oui

Suez17: oui mais il n'y a aucun entrée / sortie

Bob: http://chat.codingame.com/pastebin/d6f50be4-dd0c-4da4-83d9-45796c27addd

Suez17: haha merci du conseil

Bob: c'est quel puzzle ?

Suez17: Aneo

dbdr: JBM: ya un filtre "human", mais faut que je trouve le moyen de marquer mon bot

Bob: euh c'était lequel celui-là déjà ?

Bob: ah oui

Default avatar.png JBM: feux rouges non?

Suez17: tu as des feux, tu dois trouver la vitesse max qui te permet de passer tous les feux au vert dans s'arrêter

Bob: yes

Bob: 15 lignes

Suez17: haha oula ça dépend pour qui

Suez17: j'ai passer 3h30

Bob: fais voir ton code ?

Suez17: pour faire 80%

Suez17: il est un peu sale

Suez17: je t'envoie

Bob: au minimum t'as le nom du validateur qui échoue

Bob: ça peut donner une vague idée

Bob: vas-y colle dans le chat

Suez17: Autoroute allemande et route de campagne sans terre plein central

Suez17: http://chat.codingame.com/pastebin/92c7361a-4dbe-47e0-a6ef-3bec4ae91a13

dbdr: bah pourtant: https://cg.spdns.eu/wiki/Special:UserRights/Chat_Log

dbdr: il est bien dans le groupe Bots

Bob: d'emblée, j'ai une hésitation sur la constante de conversion + le math.round

Default avatar.png JBM: et pourtant...

Suez17: hum oui je pense aussi c'est là où j'ai le plus séché

dbdr: et pourtant...

Suez17: la constante est peut-être trop approximative

Bob: !(((Math.round(temps) % (infosFeu[1] * 2)) >= 0)

Bob: >_<

Suez17: lol ouai je sais c'est pas ouf

Bob: en fait tu veux dire Math.round(temps) % (infosFeu[1] * 2) < 0 ?

Bob: du coup

Bob: les négations c'est le Mal

Suez17: hum

Suez17: oui j'ai fait pas la négation pour simplifier

Suez17: en gros tant que le résultat est faux je continue

Suez17: à chercher la valeur

Suez17: je vais essayer de simplifier

dwarfie: < 0 et < duration ... bizarre

dwarfie: vu que duration est toujours > 0

Suez17: hum

dwarfie: ah non , j'ai rien dit ... trop de parenthase , ca rend moins lisile que du clojure :D

Bob: déjà en effet je commencerais par virer la constante

Bob: et faire le vrai calcul

Bob: tu auras moins de risques de tomber sur une erreur de précision à la con

Bob: ensuite euh pourquoi round en fait ?

Suez17: ouai je pense aussi

Suez17: le round en fait

Bob: plutôt que floor, par exemple

Bob: j'ai aussi un peu de mal à comprendre le % (infosFeu[1] * 2)

Suez17: admettons le feu dure 10 sec, à partir de la seconde 20 tu repasses au vert, j'avais calculé 19.99995 sec pour arriver au feu, ça m'a compté faux, il fallait que j'arrondisse à l'unité la plus proche pour que ça passe

Bob: en fait je suis limite surpris que ce code-là passe tous les tests :)

257832: Reuh

Suez17: haha non je jure

Suez17: y'a que les tests non ide où je suis à 80%

Bob: ah je ne conteste pas

Bob: mais des fois par manque de bol un code très faux peut quand même passer tous les tests :)

Suez17: hum oui je vais essayer de simplifier tout ça

Thyl: Yo

dwarfie: clair ... moi je suis plus sur Math.round(temps/infosFeu[1])%2

dbdr: JBM: si tu as une idée... là je vois pas

Bob: pas mieux que dwarfie

Default avatar.png JBM: pas particulierement :/

Suez17: je me dis toujours faire une première solution, et ensuite refactorisé / optimisé

Bob: enfin moi j'ai un floor

BlaiseEbuth: Sur quoi ?

Bob: ah ça oui c'est toujours une bonne idée

dwarfie: en effet , je suis avec un floor , mais je voulais pas donné la réponse final :D

**dwarfie en mode roublard

Suez17: floor passerait ?

Bob: hihi

Bob: en fait c'est vraiment ton test avec le modulo par le double de la durée du feu que j'ai du mal à comprendre

BlaiseEbuth: Suuuurrrkwaaaaa ?

Bob: le puzzle Aneo

Bob: celui où il faut speeder pour avoir l'onde verte

Suez17: hum en fait ce module

BlaiseEbuth: Ah ouai, d'où les arrondis

Suez17: modulo

dbdr: en fait, la question est philosophique: qu'est-ce qui fait qu'un bot est un bot

Bob: Automaton2000, qu'est-ce qui fait que tu es un bot ?

dbdr: faudrait demander à Alan, s'il était encore parmis nous :(

Automaton2000: après je ne sais pas

Bob: AutomatonNN, qu'est-ce qui fait que tu es un bot ?

AutomatonNN: et c'est quoi le but de l'article ?

Bob: eh ben c'est pas avec vous deux qu'on va faire progresser la science hein

Default avatar.png JBM: Automaton2000, si tu vois une tortue retournee dans le desert, qu'est-ce que tu fais?

Automaton2000: faut faire gaffe à ce que ce n'est pas le boss ?

Default avatar.png JBM: c'est sur

BlaiseEbuth: Ouai, prudence

Bob: JBM : fais gaffe y en a qui ont mal fini en posant ce genre de question

Default avatar.png JBM: ah bon?

Bob: (référence)

Bob: (le début de Blade Runner)

Default avatar.png JBM: c'est fou que j'aie parle de ca

dbdr: allez, spéciale dédicace à dwarfie https://www.youtube.com/watch?v=jQE66WA2s-A

Bob: pardon - la vraie question c'est "vous ne la retournez pas. Pourquoi faites-vous ça ?"

Bob: c'est d'autant plus mignon que tu aies posé cette question précise vu que le but du test dans le film est précisément de déterminer si on est face à un androïde :)

Default avatar.png JBM: c'est vraiment une coincidence incroyable

BlaiseEbuth: Mais ça marche pas pour les iphones du coup ?

dbdr: ya un rapport avec Bender qui sait pas se remettre debout s'il est sur le dos?

Zorg1: bah non ton iphone fait partie d'un réseau dont la finalité est de simuler le cerveau de Steve Jobs

dbdr: lol

Bob: Suez17: ah j'ai compris ton modulo

dbdr: pour le Woz ils avaient pas la capacité

Bob: donc pour info, moi en faisant le vrai calcul pour la conversion et avec un floor a priori ça passe

Bob: enfin je suis en C++

Default avatar.png JBM: famous automaton words

Bob: tu es peut-être victime d'une fourberie avec le modulo sur des double aussi

Bob: ah mais attends t'as aussi un truc fondamentalement faux dans ton code

Zorg1: bob the human debugger

Bob: ah non pardon

Bob: c'est le test qui est dans le sens inverse du mien

Bob: bon en tout cas t'es pas très loin

Bob: juste ton test qui me semble un peu compliqué conceptuellement

Bob: tu divises par le double de la durée du feu et tu regardes si le nombre de secondes restant est dans la "bonne" moitié

Bob: moi je divise par la durée du feu pour avoir le nombre de cycles écoulés et je regarde si il est pair ou impair :)

Thyl: Les doubles ne facilite pas le modulo ?

Bob: c'est-à-dire ?

BlaiseEbuth: :thinking:

Bob: en fait le code de Suez17 essaye de savoir où il se trouve dans le cycle rouge/vert

Bob: moi je compte juste le nombre d'alternances

Bob: ça revient au même pour le but visé ici mais ma méthode me semble un peu plus simple à conceptualiser et à coder

Bob: la sienne est un peu plus précise mais c'est une précision dont on n'a pas besoin ici

pardouin: quelqu'un peut reposter son script ?

pardouin: je l'ai passé en python avec un floor en tout cas

Zorg1: http://chat.codingame.com/pastebin/92c7361a-4dbe-47e0-a6ef-3bec4ae91a13

Zorg1: j'avais un onglet ouvert dessus, t'as de la chance

pardouin: pourquoi il divise pas par 3.6 au lieu de multiplier par sa constante ?

pardouin: et floor au lieu de round

**BlaiseEbuth essuie le sang de ses yeux.

BlaiseEbuth: Pourrait prévenir quand c'est du java...

Zorg1: t'avais pas ta bassine à portée de main ?

Zorg1: c'est bête

Bob: c'est ce que j'ai dit

pardouin: j'ai testé avec ces modifs mais ça fait que 90%

Bob: j'ai réussi à le bricoler un peu pour faire 100

Bob: donc bon c'est pas très loin

Bob: mais je saurais pas vraiment dire pourquoi ça passe pas

BlaiseEbuth: Parce que le feu est rouge... :grin:

Bob: tu sors

Bob: mais non pas toi

BlaiseEbuth: Qui ça ?

Bob: mais non pas toi

BlaiseEbuth: Bob est cassé ! :scream:

Bob: :D

Zorg1: Nous pouvons réparer ce Bob

Zorg1: nous en avons les moyens technologiques et financiers

pardouin: j'ai essayé de mettre des (double) partout mais sans succès

Bob: Out of b33r error

BlaiseEbuth: fix ton Bob

Zorg1: améliore ton réserve de beer

pardouin: Ah si j'ai trouvé comment fixer son code. Tu cliques sur la combo box en dessous de JOBS.

BlaiseEbuth: Steve...

Zorg1: (bruitage chelou bionique)

Bob: aaaaahhhh mais je chie sur graphql

Default avatar.png JBM: son systeme cyberdigestif est deregle!

Bob: je t'en foutrai de rajouter des champs typename moi

Bob: forcément après le isEqual passe pas

pardouin: je viens de percuter que selon les langages, le retour chariot compte 1 ou 2 chars

Suez17: Bob: nickel je vais essayer

Zorg1: ça fait mal ?

pardouin: sur JS ça ne compte qu'1 donc il vaut mieux passer à la ligne qu'écrire \n

Suez17: fallait que je fasse une pause ahaha

Bob: bon courage en tout cas t'es pas très loin

Bob: moi je vous la souhaite bonne

Bob: soyez sages

Bob: o/

Suez17: ++

pardouin: \o

Zorg1: o/

BlaiseEbuth: \o/

dbdr: pardouin: pourquoi 2 chars?

dbdr: avec l'indentation?

BlaiseEbuth: stoi l'indentation

dbdr: good bot

Zorg1: bad bot

dbdr: ugly bot?

BlaiseEbuth: Wouhinhinhinhinhin...wouin wouin wouin !

Zorg1: le monde se divise en deux, ceux qui ont le flingue et ceux qui codent des IHMs. toi tu codes :p

dbdr: TIL, brutto ça veut dire laid

Zorg1: oui mais les traductions de titres de films

dbdr: ben en français ils ont gardé la phonétique

dbdr: en anglais le sens

dbdr: cela dit la traduction en français sonne plutot mieux non?

dbdr: et celle en anglais est meilleure comme meme pour faire des articles de blog sur tout et n'importe quoi

dbdr: classique

dbdr: https://en.wikipedia.org/wiki/Good_Bad_%26_Ugly

D

Zorg1: houla une version indienne

Zorg1: j'ai peur

dbdr: Sergio Leone à Bollywood?

Zorg1: chépa t'as une indienne avec un violon en premier plan

dbdr: ouais, ça parle d'une greve

dbdr: ça doit voler plus haut

Zorg1: et ils ont remplacé la guerre de secession par une grève

BlaiseEbuth: Pareil

Zorg1: y a un scène où ils démolissent une usine pour faire plaisir à un syndicaliste mourrant ?

dbdr: c'est ma scène favorite

Zorg1: je me souviens de celle ci, de la scène dans le cimetière, et celle où Tuco est dans la baignoire (en gros)

Default avatar.png JBM: quand tu dois tirer, tire

Default avatar.png JBM: j'ai vu recemment la version longue

Default avatar.png JBM: on comprend vachement mieux l'histoire

RomanceDawn: katon !

Zorg1: l'ancien ou le jeune ?

Default avatar.png TheTwilightRubberDuck_3bc: du monde?