Chat:Fr/2021-09-09

From CG community
Jump to navigation Jump to search

Stilgart: Zorg1: tout à fait, mais ça aurait pu arriver sur un semi-privé

dwarfie: ce qu'il y'a de bien au luxembourg , c'est que t'y bosses pas longtemps t'as la retraite minimum ... 1700 euros quand meme le minimum ...

dwarfie: (en plus de la retraite en france ...)

GroutchKeu: o/

Stilgart: \o

Zorg1: o/

3141948: > le CB utilisait des règles suffisamment différentes de l'original pour que ce soit intéressant:) Ouais c'était pas mal et eu la chance de papoter avec Bob

3141948: > ouais après s'il a un boulot réellement en adéquation avec ce genre de compétences ça peut être logique :) Le + souvent, les recruteurs captent pas grand chose à ce qui se fait ici. Ils connaissent que les stacks et technos du moment

3141948: Tu leur dit charcutier ou legend sur god, c du pareil au même. Ils recrutent sur tes études, âge et expériences

3141948: Après la plateforme a un bon rayonnement au niveau des entreprises

3141948: 90% des gens embauchés dans l'it ne dépassent pas la ligue bronze

cartoone222: hi

Stilgart: philRG: je voudrais pas dire... mais ne pas passer silver c'est quand même pas bon signe

Stilgart: c'est bien entendu à relativiser en fonction du temps passé... mais quand on cherche un boulot via CG, on doit pouvoir consacrer suffisament de temps en contest pour passer au moins silver

cartoone222: bonjour

Stilgart: (et même gold si on viuse un poste de dev en C++/C#/Java)

Stilgart: bonjour cartoone222

cartoone222: vous faite quoi ???

Stilgart: j'imprime mes sujets de TD pour demain, et toi ?

KiwiTae: faites

KiwiTae: hehe

cartoone222: je suis ne pose meridien et je travaille sur code of rings

Stilgart: bonne idée ça

Stilgart: il faudrait que je le refasse from scratch celui là :/

cartoone222: c'est a dire le refair sur scrache le langage visuelle ???

Alshock: qu'est-ce que tu veux dire ?

pardouin: from scratch = repartir de zéro

cartoone222: merci

Zorg1: ex nihilo si tu préfères ^^

Alshock: ah le langage viseul c'est le scratch pour lycéen, je viens de comprendre le quiproquo

nicola: Et pour collégien.

Alshock: je croyais que tu voulais coder un langage visuel de zéro je bitais rien

cartoone222: pour colegien au lycee c'est python

Alshock: import kturtle

nicola: import turtle

nicola: Plutôt.

Alshock: pardon, j'avais une standalone qui s'appelait kturtle dans ma jeunesse

nicola: Oui mais vu le niveau moyen du lycéen en programmation, Algobox suffit.

Alshock: conné pô

nicola: Mais kturtle existe aussi.

Alshock: oh mon dieu un langage de pseudo-pseudocode... Rien qu'à la vue j'ai des remontées gastriques

nicola: Tu peux basculer en mode clavier.

nicola: > aptitude search turtle i kturtle - educational programming environment

Alshock: visiblement c'est turtle sous KDE

nicola: Oui.

nicola: Pour Algobox, au moins on a la dernière version dans Debian, contrairement à Scratch.

nicola: Algobox est libre, plus Scratch.

Alshock: C'est d'une tristesse

nicola: De quoi ?

cartoone222: j'ai un question jais pas commencer y a pas longtemps

Alshock: pose donc

cartoone222: coding game

nicola: Oui ?

cartoone222: j'ai mise entres 2 fois

nicola: Quoi ?

cartoone222: :flushed:

Alshock: ce que tu dis n'a aucun sens

cartoone222: je vais tout re ecrire oublier

cartoone222: j'ai un question jais pas commencer y a pas longtemps coding game

Alshock: concentre toi sur la question

nicola: Et sur ton orthographe, ce que tu écris est peu compréhensible.

cartoone222: j'ai un question jais pas commencer y a pas longtemps coding game combien de ligne fais un bot fini sur un combat de bot enmoyen??

nicola: C’est comme en programmation, si tu confonds if et fi, ça ne va pas marcher.

Alshock: oulah ça dépend énomrément

cartoone222: sinon donne un exemple

nicola: Ça dépend s’il est programmé en Ruby ou en C#.

cartoone222: moi je suis en python

Alshock: en fait, déjà le concept de "bot fini" est pas évident. Et certains aiment garder leur code court et concis (c'est pas mal) tandis que d'autres s'en fichent que ce soit long, en plus le langage joue bcp

nicola: Le style de programmation aussi.

nicola: L’algorithme utilisé aussi.

Alshock: le python est un langage assez concis, mais encore une fois tout dépend de ce qu'on appelle un bot fini. En fait par définition un bot n'est jamais vraiment fini

Alshock: Certains sont très contents avec des petits bots bien pensés d'une centaine de lignes "à peine"

cartoone222: oui ok merci pour la reponce

Alshock: certains font plus long, je ne me rappelle plus la limite de taille du code source dans CG

Alshock: Suffisant pour à peu près tout ce que tu pourrais écrire, sauf si tu fais une lookup de millions de valeurs

Alshock: The code size for any game is limited to 100k characters.

cartoone222: j'ai une autre question quel est votre procédure pour résoudre un problème de bot

Alshock: Je vais te donner le précepte de Bob : commence simple

Alshock: Fais un truc con et aléatoire qui ne crash pas déjà

Alshock: et ensuite améliore le en commençant toujours par le plus simple et rapide

Alshock: https://www.codingame.com/playgrounds/40701/help-center/tips-and-resources

Alshock: (ya deux reading suggestions que je te suggère à mon tour)

Zorg1: Automaton2000 pourquoi ils lardent tous leurs phrases d'expression anglaise ici :(

Automaton2000: mais en vrai c'est un peu tout

philRG: AIshock: oui moi c'est entre les 2 (longueur moyenne: max 500 lignes et souvent j'utilise des classes aussi ce qui rallonge). Les if/else je me limite. Avec une bonne analyse, on peut effectivement monter assez haut au moins jusqu'en gold avec des simples ifs

philRG: j'aime bien les codes courts et aussi un code bien écrit et lisible qui retraduit bien le concept du jeu.

philRG: un peu comme dans un jeu de société avec des règles bien conçues

philRG: j'ai pas vraiment l'impression de faire de l'informatique en écrivant un bot en fait

philRG: en python je veux dire

philRG: c pas loin du pseudo-code au niveau lecture

philRG: pour l'écriture c'est quand même différent, sans maîtrise du langage, tu ne vas pas très loin

philRG: peu d'intérêt si tu écris un code de 5000 lignes que personne ne peut relire y compris son auteur

Default avatar.png The_Else: philRG :joy: :joy: :joy:

Default avatar.png The_Else: c vrai lorsque je termines un clashcode et je lis le code phyton d'autre développeur je trouve qu'ils ont effectuer cela en une ou deux linges alors que moi j'ai une centaine

Default avatar.png The_Else: hhhhhhhhhhh

Zorg1: waouh 100 lignes de python en 15 minutes, z'êtes productifs ...

Default avatar.png The_Else: une centaine en java

Zorg1: en CoC ?

Zorg1: change de langage alors ^^

Zorg1: pour les CoC vaut mieux un langage adapté au prototypage rapide (genre python, ruby, ...)

Zorg1: Si tu veux te perfectionner en Java, fait plutôt des puzzles

BlaiseEbuth: Yo tout l'monde ! Automaton2000 !

Automaton2000: il est kaput le petit BlaiseEbuth ?

BlaiseEbuth: (╯°□°)╯︵ ┻━┻

BlaiseEbuth: Sale bête

Alshock: :hugging: blaise <3

Alshock: Automaton2000 lâche de ces punchlines en ce moment .o.

Automaton2000: j'ai eu un cours de math

BlaiseEbuth: Alshock :hugging:

Bon[]Crayon: Salut o/

Bon[]Crayon: Automaton2000 o/

Automaton2000: comme tout le monde submit

Bon[]Crayon: Automaton2000 C'est le moment de le faire aussi.

Automaton2000: tu peux aussi le faire en clojure " la phrase de ce contest

Zorg1: :D

Bon[]Crayon: Automaton2000 :thumbsup_tone2:

Automaton2000: tout ça parce que ça fait une heure que je suis en train d'apprendre le c++

Zorg1: une heure d'apprentissage de C++ ... :thinking: ... dans les grilles de lecture des SSII ça doit te mener au niveau "expert junior C++" Automaton2000

Automaton2000: qu'est-ce que je fais une pause

Zorg1: mais non continue 1 heure d'apprentissage de plus et t'es "Export Senior C++" Automaton2000

Automaton2000: j'ai une version avec un bug

Zorg1: t'appelle ça "version avec feature exotique" et ça passe en prod les doigts dans le nez Automaton2000

Automaton2000: Zorg1 : tu sais bien que c'est pas les plus faciles à faire

Bon[]Crayon: :smiley:

Zorg1: oui mais c'est les plus demandées Automaton2000 ;-)

Automaton2000: si on fait un bot qui fait ça

Alshock: go proposer un bot avec une feature exotique, senior C++ Automaton2000

Automaton2000: c'est pas que dans certaines profession ça ?

Alshock: si, seules les professions avec beaucoup trop de temps libre

Stilgart: Automaton2000: alors, heureux ?

Automaton2000: j'adore quand je fais des tests dans l'ide

Zorg1: t'as des gouts bizarres Automaton2000

Automaton2000: pour un code de base pour que ça marche

Zorg1: ça fait slogan politique ça Automaton2000

Automaton2000: même si la totalité des tests de recrutement mais ils font des trucs qui marchent pas

MasakiKyosuke: o/

Zorg1: \o

MasakiKyosuke: Sacrée discussion que tu tiens avec Automaton2000 !

Automaton2000: on parle de la meme maniere

MasakiKyosuke: J'ai vu ça

Zorg1: oui pê falloir que je bosse aussi ^^

MasakiKyosuke: Maaaaiiiis non !

Bon[]Crayon: Our CodinGamers eat, sleep and breathe code.

Stilgart: Automaton2000 a fond dans le test

Automaton2000: le temps passé sur le chat du site

3141948: > c vrai lorsque je termines un clashcode et je lis le code phyton d'autre développeur je trouve qu'ils ont effectuer cela en une ou deux linges alors que moi j'ai une centaine Çà c'est spécifique à des langages comme ruby ou python. Dans les bots j'utilise souvent des lambda expression et des list comprehension pour réduire 5 lignes en une seule sans en abuser

3141948: CoC et puzzle de bot, c pas les mêmes contraintes

3141948: > j'adore quand je fais des tests dans l'ide 👍

3141948: > t'as des gouts bizarres Automaton2000 meeh non il devient seulement humain 🤗

Automaton2000: déjà que j'ai pas fait gaffe à ce que tu as plus de 50% contre le boss

3141948: > tu peux aussi le faire en clojure " la phrase de ce contest 😂

3141948: > (╯°□°)╯︵ ┻━┻ > Sale bête 😂

Stilgart: on sait pourquoi CG LeaderGraph (l'outil de dbdr) est HS au fait ?

BlaiseEbuth: Depuis le temps... Non

BlaiseEbuth: Enfin si.

BlaiseEbuth: Parce que dbdr l'a pas fix.

Zorg1: vu que l'API change tout le temps si tu maintiens pas ça finit par tomber. Après il a sûrement plus intéressant à faire ^^

BlaiseEbuth: Genre son salon de massage.

Stilgart: Zorg1: dbdr devrait être assez robuste pour ça

Stilgart: une partie des infos vient de chez moi

Stilgart: d'ailleurs, si vous voulez un export .json personnalisé, vous pouvez demander

Zorg1: ah ok

Zorg1: blaise : il a fait le ménage sur son site quand je suis repassé dernièrement

BlaiseEbuth: Oui je sais. ^^

BlaiseEbuth: Il a bloqué la création de compte aussi.

philRG: Stilgart: alors je voudrais une vue de mon nombre de puzzles/CoC résolus par année/mois, niveau de ligue aux multis, etc... hehe

philRG: emballés dans un papier cadeau

philRG: :-D

philRG: bon repris la course à pied ce midi après 15 mois d'arrêt, ça donne l'impression de planer après une séance

Zorg1: tu me fais penser qu'il faut que je me remette à nager moi ...

Zorg1: je flotterais sans doute mieux, par contre pour avancer :(

philRG: la natation c pas mal, enfin je me contente de ma piscine de 10m2 après le footing, ça évite d'attraper le covid

philRG: natation et marche nordique -> non traumatisants

philRG: ce midi au stade près mairie, présenter pass sanitaire au gardien, et stade ouvert seulement en dehors des heures d'école

philRG: j'suis pas un très bon nageur, plutôt coureur

Zorg1: ah c'est le nouveau truc du gouvernement le Covid pullule dans la Javel ?

philRG: ah je sais pas en principe le javel ça a quel effet?

philRG: en principe ça l'élimine

philRG: piscine = lieu fermée rempli d'humidité donc accélérateur de transmission

Zorg1: il y a un toit ouvrant là où je vais ^^

Zorg1: c'est trop classe d'ailleurs

philRG: ah ok c bon alors mais le toit doit fermer à l'automne je suppos

Zorg1: (enfin une partie du toit est sur des rails, qu'ils ouvrent en été)

Zorg1: oui ^^

philRG: c comme chez moi

b0n5a1: o/

Bon[]Crayon: \o

Bon[]Crayon: À la bonne heure Automaton2000 :turtle:

Automaton2000: j'ai eu un cours de gdb/valgrind que je devrais avoir du temps pour les contests

Bon[]Crayon: Eh eh le boss est là, son nom est Automaton2000 alias la tortue.

Automaton2000: non y a pas un truc de ce genre

Bon[]Crayon: Automaton2000 Genre la tortue :turtle:

Automaton2000: bon, je peux vous poser une question sur le challenge

Bon[]Crayon: Nous écoutons le bon Automaton2000.

Automaton2000: meme pas eu besoin de faire une liste de liste

Bon[]Crayon: Automaton2000 Et pour les courses ?

Automaton2000: en fait j'ai eu un bug sur le puzzle de la semaine ?

Bon[]Crayon: Automaton2000 Relis l'énoncé.

Automaton2000: il y a une nouvelle version de gcc

Bon[]Crayon: Automaton2000 gcpa

Automaton2000: tester c'est pour les faibles

Zorg1: t'as pas l'impression de te contredire Automaton2000 ?

Automaton2000: pour de vrai là ^^

philRG: purée ce que j'aime pas ces puzzles où il faut résoudre des jeux de test

BlaiseEbuth: Genre... Tous les puzzles ?

philRG: ben ça dépend. Ca me motive pas. Je préfère viser des classements dans des ligues

philRG: ça donne un peu plus de libertés

BlaiseEbuth: Donc t'aimes pas les puzzles...

philRG: c çà

philRG: question de terminologie

BlaiseEbuth: Pourquoi faire simple...

philRG: hehe

BlaiseEbuth: "J'aime pas les voitures qui ont des roues"

philRG: au début je pensais qu'il fallait tuer des goblins sur CG

philRG: et Zorg m'a dit que ça s'appelait des puzzles :)

BlaiseEbuth: Pourquoi des goblins ?

philRG: j'ai du apprendre un langage pfff n'empêche

philRG: c un exemple

philRG: ben tu gagnes de l'XP en tuant des goblins dans les jeux non?

philRG: c le principe

philRG: bon j'ai répondu à une offre Pôle Emploi comme dev Java et voilà la réponse du recruteur

KylouLeLoup: g gangier cheh

marting37: J'ai une petite question, j'ai commencé les combats de robot mais je ne sais pas comment gagner des places, je fais bien les combats dans l'arene mais ca ne change rien

BlaiseEbuth: Tu attends que tout tes combats soient finis ou tu n'arrêtes pas de relancer comme un bourin ?

marting37: J'attends bien que tout soit finis a cahque fois, donc j'ai un meilleur classement qu'au debut mais apres je reviens sur la page et rien ne change

BlaiseEbuth: "la page"

Alshock: l'éditeur je suppose. Pour que ta ligue change il faut finir devant le boss

marting37: La page d'accueil des combat de robot ou l'on peut voir son classement

marting37: pardon

BlaiseEbuth: T'as essayé de rafraichir ?

marting37: Oui mais rien ne se passe

BlaiseEbuth: De quelle page tu parles exactement ?

philRG: pas mal je postule à une offre de dev Java recommandée par Pôle Emploi, et voici la réponse de la boîte: Si vous êtes reconnu en tant que travailleur en situation de handicap, je vous invite à créer un dossier sur notre site carrière https://www.aktisea.com/ et à postuler à l’offre qui correspond à votre profil.


marting37: La page qui explique comment marche les combats de robots, avec notre classement

BlaiseEbuth: File le lien

philRG: comme j'ai dit que j'ai pas de reconnaissance travailleur handicapé, elle m'a dit de postuler directement à Amadeus ....

philRG: ça me fait une belle jambe tiens et si je me la coupais, je serai embauché? J'essaye

marting37: https://www.codingame.com/multiplayer/bot-programming/coders-strike-back

marting37: Ah j'ai rien dit desolé du derangement je pense que ca met juste du temps a rafraichir

BlaiseEbuth: Possible. Sinon tu peux voir ton classement en direct dans l'iDE

Stilgart: Automaton2000: au rapport !

Automaton2000: sinon pour répondre à ta question

Thyl: philRG fait une reconversion prof

philRG: j'ai la flemme de postuler dans le fonctionnariat

philRG: trop de papiers à remplir

Default avatar.png Bartos: Bonsoir, excusez moi quelqu'un pourrait m'expliquer je n'arrive pas a comprendre pourquoi dans Temperatures le validateur 3 ne passe pas : 5526 alone merci de me lancer votre lanterne pour m'éclairer :)

**dwarfie charge le trebuchet avec des lanternes et tire ....

BlaiseEbuth: Je dirais que ça viens de ton code Bartos...

Zorg1: philrg : postuler dans le fonctionnariat : y a pas une limite d'aêg ?

Zorg1: *âge

BlaiseEbuth: Ouai, t'es trop vieux. Pis il faut un casier vierge...

dwarfie: la limite , elle existe plus

BlaiseEbuth: Faut quand même un casier vierge.

dwarfie: et reussir le concours.... et la premiere epreuve est de savoir ecrire et remplir un dossier :p

nicola: Le concours, maintenant, est devenu un examen.

nicola: Au contraire du bac, qui est devenu un concours.

Zorg1: ah il y a un nombre de places ?

nicola: 90 % minimum.

dwarfie: le bac ... c'est devenu le contraire du loto ....

dwarfie: le but c'est "100% de ceux qui ont tenté leur chance ont gagné"

Bon[]Crayon: Automaton2000 La chance eu boss.

Automaton2000: par contre si tu fais la même que le mien :(

Bon[]Crayon: Automaton2000 Je n'en ai pas l'intention.

Automaton2000: on est toujours sur le même tour ?

Stilgart: Automaton2000: fix ton runner et prend un tour d'avance

Automaton2000: il a du mal à comprendre pourquoi je me fais pas de coc

dwarfie: Automaton2000 : parce que c'est de la BIPPPPP !?

Automaton2000: j'ai lu pas mal de gens

dwarfie: Automaton2000 : donc tu dois savoir depuis le temps ....

Automaton2000: après est-ce que c'est possible de faire un gros paquet de int

dwarfie: Automaton2000 , oui avec un gros tas de bits ... :rofl:

Automaton2000: va falloir que je me dis qu'il faudrait que je fasse un peu de la gueule

Stilgart: Automaton2000: regarde la vidéo de r*curse

Automaton2000: quand est-ce qu'il est possible de faire un truc récursif

b0n5a1: :D

Stilgart: 2x 4h de vidéos, et il veut nous les mettre en boucle... gg

Zorg1: ah qqn veut faire un bitstream ?

Remi_avec_un_i: Salut tout le monde. Salut Automaton2000

Automaton2000: ah non je confonds avec un autre jeu

Bon[]Crayon: o/

Bon[]Crayon: Automaton2000 Le jeu du ni oui ni non.

Automaton2000: pas sur que ce soit le cas

Bon[]Crayon: En souvenir d'AutomatonNN qui perdait toujours au jeu du ni oui ni non.

Remi_avec_un_i: En insistant un peu, Automaton2000 pourra peut-être finir par perdre aussi.

Automaton2000: ouais mais c'est pas ce que je pensais que c'était la même chose ^^

Remi_avec_un_i: ouais et oui c'est pareil dans le jeu du ni oui ni non ?

Stilgart: Automaton2000: arrête de penser et fais le truc

Automaton2000: bah je viens de me rendre compte qu'il y a un gros bug dans mon code

Bon[]Crayon: Automaton2000 Un bug de tortue.

Automaton2000: mais comme je suis pas prêt pour le contest je crois

Stilgart: tu as le temps, le printemps c'est pas pour tout de suite Automaton2000 ;)

Automaton2000: mais bon tu peux faire des trucs du genre

**Stilgart tend une :turtle: à Automaton2000

Automaton2000: plop salut a tous et Stilgart

philRG: c compliqué à vous lire si vous alimentez Automaton2000...

Automaton2000: ça me permet de faire du minimax

philRG: là c plutôt du max et moi du min Automaton2000 :-D

Automaton2000: du moment qu'il y a eu des soucis de timeout

Stilgart: ce qui est compliqué, c'est de comprendre les arcanes du compteur utilisé pour les petits carr&s

philRG: BlaiseEbuth ah ben ça je suis clean

BlaiseEbuth: C'est c'qu'on dit...

philRG: mon père a fait la guerre, mon grand-père a fait la guerre

philRG: j'ai pas trop eu le choix en terme de conduite

Bon[]Crayon: la conduite à droite

philRG: j'ai pas vu ce qu'a écrit nicola bon tant pis

BlaiseEbuth: On apprend des choses c'est cool. Je note que les enfants de militaires sont toujours légalement irréprochables. C'est bon à savoir.

philRG: ah ben non je pense pas mais ça aide un peu. L'armée française ne me paraît être un repaire de délinquants ou alors je me trompe

BlaiseEbuth: Le lapsus... :3

philRG: les enfants de gendarmes le sont moins

Remi_avec_un_i: Mais ça c'était avant ^^

BlaiseEbuth: Bah ouai mais t'y es pas dans l'armée toi...

philRG: nan mais bon j'ai suivi les ordres quand je suis né

philRG: hehe

philRG: j'ai pas trop eu le choix

philRG: bon chaque interaction avec Pôle Emploi me ruine ma santé mentale pour au moins 1 journée. Bonne nuit les enfants :-à

philRG: :-)

BlaiseEbuth: Bonne nuit papi.

Remi_avec_un_i: Bonne nuit

philRG: merci les petits :sleeping:

Remi_avec_un_i: Oh ! c'est l'heure de faire dodo ! ^^

philRG: ah 75% à the labyrinth en changeant une ligne qui me faisait timeout

philRG: 50% dans l'IDE ceci dit

philRG: 4 et 8 qui coincent

foxalfabravo: salut, y a encore du monde pour une question?

philRG: je vois ce qui coince: https://www.codingame.com/share-replay/579716079

Stilgart: tu as pensé à explorer avant d'appuyer sur le bouton ?

Stilgart: foxalfabravo: bonsoir

Stilgart: pose directement ta question, tu auras plus de chances :)

philRG: ben j'explore les cellules non visitées les plus proches de kirk en distance de manhattan

foxalfabravo: je suis sur code a la mode, et je rentre en timeout sur la lecture de la premiere valeur :(

Stilgart: dans quel langage ?

foxalfabravo: c++

foxalfabravo: j'ai gardé le code initial

philRG: philRG 11:21PM je vois pas ce qui coince:

foxalfabravo: Et ca :

   cin >> numAllCustomers; cin.ignore();


foxalfabravo: met 2.9631e+06µs a se faire

philRG: y a pas une histoire que le referee commence à lire à partir du premier input

Stilgart: c'est jamais une bonne idée de garder le code initial

philRG: et lit pas ce qu'il y a entre le while true et le premier cin?

Stilgart: par contre, je ne connais pas de problème courant lié à C++

BlaiseEbuth: Si tu mesures avant d'avoir lu le premier input, ou après ton output, tu mesures le temps du referee et des autres bots.

Stilgart: si ça plante tout de suite, ça peut être que ton code ne compile pas

Stilgart: genre tu abuses tellement des templates que ça prend trop de temps à compiler

foxalfabravo: le code compile, la valeur sort d'un timer que j'ai ajouté

Stilgart: (après, j'ai vu ce soucis que avec Haskell, dont le compilateur peut se montrer terriblement lent)

foxalfabravo: effectivement ca compile super lentement

Stilgart: BlaiseEbuth: j'ajoute que la conclusion de mon thread.detach() (qui rappelons-le était la chose à faire) est que tu peux jouer pendant le temps du referee

Stilgart: mais pas pendant celui de l'adversaire

Stilgart: foxalfabravo: si tu vois la sortie d'un cerr, c'est pas ça

Stilgart: tu as essayé de jouer en temps que joueur 2 (ou 3) pour voir ?

foxalfabravo: en 2 ca met 2.5 sec à démarrer, et en 3 j'ai meme pas d'affichage de mon cerr, ok, c'est le runner

foxalfabravo: (démarrer = mesure juste avant la lecture de l'input)

Stilgart: alors déjà

Stilgart: le timer il faut le lancer APRES

Stilgart: la lecture du premier input

Stilgart: et ça ressemble fort à une erreur de lecture + message d'erreur pas retransmis par l'IDE

foxalfabravo: pourquoi apres?

Stilgart: parce que ton temps à toi commence après cette lecture

Stilgart: avant, c'est le temps d'initialisation du referee (qui peut être assez gros selon le jeu)

Stilgart: ensuite, vérifie bien étape par étape que tu lis juste ce qu'il faut (ni trop, ni pas assez)

Stilgart: et que tu retournes bien quoi qu'il arrive une action

foxalfabravo: je ne suis meme pas a retourner une action, je me fait gicler avant le début de la boucle de toute facon

Stilgart: si tu ne retournes pas d'action, tu vas te faire sortir de toute façon

Stilgart: et ..... laisse moi pleurer

foxalfabravo: ben pleure

foxalfabravo: et merci

Stilgart: tu as pas pensé à mettre de cerr.flush() ?

Stilgart: cerr << flush ; d'ailleurs

**Stilgart savait bien qu'il aurait du vérifier la syntaxe

Stilgart: et même comme ça, tu n'auras pas la garantie d'avoir tous tes messages d'erreur sur CG

Stilgart: (le referee lit ce que tu envoies sur la sortie d'erreur s'il en a envie)

philRG: ah plus qu'un test fail à the labyrinth, je faisais trop de recherches de chemin, je les ai limitées % au temps dispo (150ms)

Stilgart: donc si tu ne vois pas une sortie, tu ne peux rien en déduire

**Stilgart tend une potion d'algorithmique à philRG

Stilgart: tu as 100 fois le temps de faire un BFS

philRG: je vois pas ce qui cloche dans le dernier: https://www.codingame.com/share-replay/579721916

philRG: Stilgart bah chsuis trop vieux pour me taper le cormen et je vais rien mémoriser comme pb de mémoire à court terme

Stilgart: philRG: je t'ai pourtant donné la réponse dès le début ;)

Stilgart: c'est quoi le rapport avec le cormen ?

philRG: nan mais c'était quoi la réponse?

philRG: un bfs?

Stilgart: parcours en largeur

Stilgart: ie, bfs parce que la VF c'est trop long à taper

Stilgart: (à noter que tu as forcément déjà du en faire dans les puzzles medium)

Stilgart: sinon, j'avais dit :

Stilgart: Stilgart 11:21PM tu as pensé à explorer avant d'appuyer sur le bouton ?


Stilgart: parce que pour sortir à temps, il faut passer par en bas et pas par la série de chicanes

Stilgart: sauf que toi tu n'as pas vu qu'en bas il y avait un chemin tout droit

philRG: ben pour revenir je prends le plus court chemin au sens A*

philRG: çà doit venir de là

philRG: car il se base sur une heuristique manhattant

Stilgart: lol

Stilgart: un BFS (beaucoup plus simple qu'un A*) suffit très largement ici

philRG: au retour j'aurais moins de calcul à faire comme j'ai déjà tout exploré

Stilgart: mais pour que ça marche, encore faut-il connaître TOUTE la map

Stilgart: ce qui n'est pas le cas

philRG: ok j'essayerai demain après le ménage et les courses

Stilgart: pour moi, tu n'as pas assez exploré le bas avant d'appuyer sur le bouton, donc ton A* rate le petit détour qui est en fait un gros raccourci

philRG: ben j'explore les cellules visibles non visitées pour lesquelles j'ai un chemin connu, et j'avance donc progressivement

philRG: oui mon A* rate effectivement le détour qui est assez subtil après analyse du replay bien vu

Stilgart: c'est pas subtile du tout

philRG: c un puzzle anti-A*

Stilgart: tu commences par révéler toute la map

Stilgart: et ensuite tu fais ce qu'on te demande

Stilgart: on ne t'a jamais dit qu'il fallait appuyer rapidement sur le bouton ;)

philRG: j'avais peur de manquer de temps avec un bfs en python mais ok je vais essayer

philRG: c'est con mais j'avais pas réfléchi à ce point lol

dwarfie: special pour philRG : https://www.youtube.com/watch?v=oJDGcxAf9D8

philRG: avec le web et frontend y a des boutons partout

philRG: et surtout sur les sites de l'administration ça devient pénible

philRG: dwarfie hehe

Stilgart: philRG: tu n'as besoin de que 2 BFS

Stilgart: 1 de case courante à bouton

Stilgart: et 1 de bouton à sortie

Stilgart: c'est très large

Stilgart: ajoute un bfs de case courante à case non explorée pour chaque tour

philRG: ok merci je ferai ça demain mal au crâne

dwarfie: https://www.kongregate.com/games/roryoc/dont-press-the-red-button

philRG: je fais trop de puzzles je prends plus le temps de lire et analyser

Zorg1: oui t'as fini d'explorer quand t'as trouver la console et un chemin pour en revenir dans le temps imparti ^^

3141948: Ah oui ça c de l'analyse hehe

3141948: A la Bob

3141948: Du bon vieux français

3141948: Et logique

Stilgart: bon, dodo time

Stilgart: Automaton2000: ne fais pas le truc en mon absence

Automaton2000: je crois que j'ai compris

Zorg1: vraiment Automaton2000 ?

Automaton2000: mais je crois que j'ai pas regardé le code de pardouin dans les solutions ?

Zorg1: si t'as pas soumis ton code python aussi Automaton2000

Automaton2000: (et je me souviens plus de la mort

dwarfie: Automaton2000 : pas grave .... la mort ne t'as pas oublié elle

Automaton2000: 1 4 et 5, 6 étoiles

b0n5a1: philRG touche pas au bouton tant que t'as pas trouvé un chemin qui te permet de sortir à temps

b0n5a1: woputain ce scroll :D

Stilgart: :D

Zorg1: ah ouais ^^

leojean890: #1h58 powaa

**BlaiseEbuth slaps leojean890 around a bit with a large 1h59.

leojean890: ^^

leojean890: soon 2 AM

Zorg1: 2:00 ici

Zorg1: :p

leojean890: same;)

leojean890: qq difficultés sur https://www.codingame.com/ide/puzzle/bit-count-to-limit :P:P

Zorg1: ah c'est un moyen

leojean890: ouais mais pas le genre de moyen que je réussis easy :P

Zorg1: jusqu'à 2^28 faut ruser un peu ^^

leojean890: les puzzles style maths/jouer avec les bits j'ai souvent qq difficultés :P

leojean890: ouais voilà je cherche la ruse :P

BlaiseEbuth: Si tu fais la ruse, Krom rira de toi, et te jettera en dehors du Valhalla.

Zorg1: il a un valhalla Crom ?

leojean890: déjà j'ai fait une première ruse pour aller à 2^n en O(1)

BlaiseEbuth: Bawé

leojean890: mais la suite j'ai plus de mal

Zorg1: je croyais que c'était le genre de dieu qu'en avait rien à battre

leojean890: t = 2**nBits * nBits/2

leojean890: vu qu'on a strictement un 1 sur 2 (périodique) jusqu'à 2^n

BlaiseEbuth: https://www.youtube.com/watch?v=jC7ghwsvYmE

Zorg1: ah ce Crom là

leojean890: par contre j'ai besoin de simplifier la suite aussi car ça timeout sur le validateur (mais pas le test évidemment)

leojean890: je peux pas partir tête baissée en O(n) entre 2**nBits et n+1

Zorg1: bon pour 0 à 2^n -1 y a combien de 1 ?

leojean890: 2**(n-1) * (n-1)/2

leojean890: même remarque que plus haut jusqu'à 2^n

Zorg1: j'aurais dir 2^(n-1)*n

Zorg1: *dit

leojean890: bah on a strictement un 1 sur 2 (périodique) jusqu'à 2^n


leojean890: genre entre 0 et 2^n..

leojean890: t'as pour le bit de droite 0 puis 1 puis 0 ..

Zorg1: bah je compte 0 à 2^n - 1 pour avoir n bits

leojean890: le second 00 puis 11 puis 00..

leojean890: du coup ça fait pile un sur 2

leojean890: 2^n nombres

leojean890: de taille chacun n

Zorg1: oui chaque bit aura un nombre égal de 0 et de 1, soit 2^n / 2 => 2^(n-1)

leojean890: avec un bit sur 2


Zorg1: que tu multiplies par le nombre de bit n

Zorg1: => 2^(n-1) * n

leojean890: ce qui fait 2^n *n/2

leojean890: mais c pareil que moi ce que tu dis$

Zorg1: oui c'est la même forumule :p

leojean890: 2^n*n/2

leojean890: t'as factorisé le 2

leojean890: en fait je suis parti de cette première optim

leojean890: pour l'intervalle (2**nBits, n+1) je suis en bruteforce

Zorg1: ok je vois un algo

leojean890: et ça timeout mdr

Zorg1: pas vraiment besoin de bruteforce, tu divises pour régner gars

leojean890: ouais j'ai pas encore trouvé xD

leojean890: je cherchais en fait à calculer vis à vis de la periodicité mentionnée plus haut

leojean890: voir pile om on s'arrête pour chaque bit

Zorg1: bah de 0 à 2^n -1 c'est OK c'est quand tu dépasse avec un 1 au début ...

leojean890: je voulais démarrer de n-2**nBits + 1

Zorg1: bon je vérifie que la solution que j'ai en tête marche ...

leojean890: ce qui est le nb de nbs restant à parcourir

leojean890: ah mais attends, je peux appliquer la même chose j'imagine

Zorg1: oui ^^

Zorg1: c'est facilement récursif en fait

leojean890: genre j'ai n-2**nBits + 1

leojean890: et je calcule le nb de bits de ça

leojean890: j'ajoute encore t += 2**nBits * nBits/2 à mon total

leojean890: et je fais ça récursivement comme tu viens de dire

Zorg1: ouaip ^^

leojean890: jusqu'à...

leojean890: obtenir une différence de 0 ou toute petite

Zorg1: bon ça marche ^^

leojean890: moi pas encore^^'

Zorg1: bah en fait f(5)= 4 + 2 + f(1)

Zorg1: de 0 à 3 : 4 bits de 4 à 5 : 2 bits (le début), le reste : f(1)

Zorg1: sur ce spoil je vais me pieuter ^^

leojean890: ouais j'ai un truc du genr avec un bug :P

leojean890: n = n-2**nBits + 1

leojean890: et hop je réitère

Zorg1: bonne nuit

leojean890: mon algo fait bien +4 +2 et ensutie de la merde sur le premier ex

leojean890: bonne nuit

leojean890: c nul les jeux de tests sont bidon par rapport aux valideurs

leojean890: ça force à se créer des tests custom