Chat:Fr/2021-10-10

From CG community
Jump to navigation Jump to search

Zorg1: yop à tous et à Automaton2000 o/

Automaton2000: me dites pas que je sache

Zorg1: à toi aussi Automaton2000 t'es devenu un "nous sachons" ;-)

Automaton2000: de toutes façons même avec un langage à la con

Remi_avec_un_i: Automaton2000 c'est le Français que tu appelles langage à la con ? :angry:

Automaton2000: c'est juste pour tester un truc

Remi_avec_un_i: Ah ok, si c'est pour tester ...

Stilgart: tortue Automaton2000 !

Automaton2000: moi j'aime bien le concept

dwarfie: les tests c'est pour les oursins Automaton2000 ... toi t'es une tortue , alors va plutot carapacer

Automaton2000: je crois pas avoir vu ça dans le forum

Stilgart: on dirait que ça lui réussit de faire des tests :D

dwarfie: Automaton2000 : on voit rien dans le forum ... a part "je suis trop fort" ou "y'a forcement un bug vu que j'arrive pas"

Automaton2000: je crois bien que c'est ça

dwarfie: :)

Zorg1: j'ai réussi "Température" j'ai forcément un QI de 350. Par contre "ASCII Art" il est mal rédigé et ils y a des erreurs dans les tests/validateurs :D

dwarfie: ah , je vois que je suis pas le seul a lire le forum ;)

dwarfie: vu que c'est carrement ca depuis une semaine :p

Remi_avec_un_i: C'est si horrible que ça le forum ?

Remi_avec_un_i: Faudrait détecter les questions à la con, et demander à Automaton2000 d'y répondre.

Automaton2000: moi je le vois sur le chat

dwarfie: Remi_avec_un_i ... y'a des moments ouais ... et j'ai oublié les gars qui repondent a des post de 2 ans d'age ou les gars ont deja resolu le probleme :D

Remi_avec_un_i: Pour ce dernier point c'est un peu le cas sur tous les forums.

dwarfie: ehu ... si quelqu'un comprend ce que veut dire le gars , je veut bien la traduction ;)

dwarfie: https://forum.codingame.com/t/mars-lander-puzzle-discussion/32/298

Remi_avec_un_i: Bah d'après google trad, le type dit qu'il ne faut pas changer l'alim mais la sortie. Ok j'ai pas compris non plus ^^

Zorg1: je crois que le gars ne sait pas lire un énoncé en fait, c'est sûr que dans ce cas là tous les énoncés sont obscurs.

Stilgart: #readTheStatement

dwarfie: #ReadindComprehension

Default avatar.png Sydny: Bonjour, j'aimerai commencer à apprendre la programmation, avez-vous des conseils pour débuter?(language, modules d'apprentissages)

domak: Sydny, la question est vaste... pourquoi veux-tu apprendre à programmer? Par curiosité? Pour en faire ta profession?

Thyl: Programation Competitive -> C++

Thyl: Micro Embarqué -> C

Thyl: Scientifique ML,DP,Math ~-> Python

Default avatar.png Sydny: http://chat.codingame.com/pastebin/9ed2dd08-9474-45e2-b420-5bdf9ec3b524

Thyl: ok

Thyl: sur Open Classroom Y a un Tutot Python par Vincent Legore

Thyl: Ce sera adapté à mon avis

Default avatar.png Sydny: ok merci je regarde ça

Stilgart: Thyl: tu es au courant que la majorité des libs python sont codées en C/C++ ?

dwarfie: la grande majorité ... et le noyau dur de python en particulier :rofl:

domak: oui je suis d'accord avec Thyl commence par python c'est le meilleur compromis pour débuter.


Thyl: voilà

dwarfie: :nauseated_face:

Thyl: et C c'est de l'assembleur

Thyl: donc pourquoi pas coder en assembleur ???

Thyl: ça c'est un argument beton

domak: la méthode dwarfie + Stilgart c'est : je te pousse dans le grand bain et si tu survis à ça, tu seras paré(e) pour toutes les situations...

domak: pourquoi pas, mais faut de la motiv. Commence par quelque chose de simple et si cela te plait, tu approfondiras.

Default avatar.png Sydny: ok le probleme c'est d'y survivre :grimacing:

dwarfie: pas a ce point la en ce qui me concerne ... mais au moins les gens reste pas dans 10 cm d'eau ...

dwarfie: 'ouais je sais nager , je coule pas ... youpi ..."

Thyl: dwarfie python n'empêche pas de faire office de plongoir pour le grand bain

Default avatar.png Sydny: par contre je regarde sur open classroom, je trouve pas de tuto ....

domak: oui je suis d'accord, faut vite passer à autre chose (je suis pas fan de python)

Thyl: le tuto est plus là

Default avatar.png Sydny: ah ....

domak: Sydny, la première des choses que tu dois apprendre c'est aller chercher l'information. Parce que même expérimenté(e), tu feras ça tout au long de ta carrière.

dwarfie: c'est pas moi qui l'ai viré .... (avant qu'on m'accuse encore a tort)

domak: Même si le tuto n'existe pas, tu as plein de cours (gratuits) sur openclassroom ou d'autres sites.

Default avatar.png Sydny: bon, je vais chercher ça

Default avatar.png Sydny: au moins je sais par ou commencer, soit python soit c++ si je suis maso :sweat_smile:

domak: "apprendre à programmer" sur google va te renvoyer plein de bon site.

domak: bons sites

Default avatar.png Sydny: après je vois sur codingame, y'a des execices pour apprendre, mais ils sont intéréssants pour comencer

Default avatar.png Sydny: ,

Default avatar.png Sydny: ?

dwarfie: y'a du bon , y'a du moins bons ... des faciles , des moins faciles ... y'a de tout

dwarfie: mais souvent ca demande un minimum de base ... et surtout la maitrise de la techinque papier+crayon :)

domak: Commence par apprendre les bases avec un cours. Quand tu les auras, tu pourras faire les exos. Sinon tu risques d'être dégouté(e) de ne pas avancer assez vite.

**dwarfie devrait d'ailleurs sortir une feuille et un crayon , vu ce qu'il merde sur son code en cours :D

domak: un cours ou un livre. Idéalement, le cours doit te proposer des exos à résoudre adaptés au contenu du cours

Default avatar.png Sydny: pas simple, bon bah je vais chercher à droite a gauche sur c++ et pyhon et essayer de trouver un truc qui me semble intéressant en priant pour pas me planter

dwarfie: se planter est clairement la meilleure facon d'apprendre ...

dwarfie: ca permet de voir ce qui marche pas et pourquoi ca marche . c'est mieux que de juste prendre un code qui marche et se satisfaire de ca

Default avatar.png Sydny: une dernière question, coder ok mais ou est-ce qu'on code? parce que y'a bien la console du navigateur mais quand j'essaie de coder les lignes qu'ils me proposent sur les tutos ça marche pas :expressionless:

Default avatar.png Sydny: j'ai trouver vscode c'est un bon support,

Default avatar.png Sydny: ?

domak: oui vscode c'est pas mal. Je préfère les IDEs développés par jetbrain mais je ne suis pas sûr qu'il y ait une version gratuite (community) pour python.

Default avatar.png Sydny: ok bon bah je vais démarrer avec ça alors, je note toujours jet brain pour plus tard si jamais je commence à bien me démerder un jour :upside_down:

domak: pense à apprendre les raccourcis-clavier. Moins tes mains quitteront le clavier pour la souris, plus tu seras efficace. Quand tu as besoin de faire une action fréquente (ex: ouvrir, un fichier), note le shortcut et essaye de toujours l'utiliser. Quand tu le maitrises bien, tu passes à un autre...

Default avatar.png Sydny: ok, déja va falloir que j'apprenne comment fonctionne vscode :grin:

dwarfie: bon ... pouvoir rejouer 50000 parties de othello , c'est fait ... plus qu'a les faire ingurgiter a mon bot :D

Thyl: moi c'est plus Langton's Ant en mode puissande de 2

Default avatar.png ClarisseB: Températures

Default avatar.png arxaqapi: des indices pour le puzzle de la semaine?

Default avatar.png arxaqapi: j'ai une version naïve qui marche je n'arrive pas à l'optimiser pour passer les derniers test

Default avatar.png Zhonya301: Pareil, même en utilisant la "programmation dynamique" je n'arrive pas à passer le 40. (mon pc le résout en environ 5s). Pour réussir la suite, j'imagine qu'il faut trier et éliminer les résultats trop médiocre. Condingame laisse combien de temps à l'algorythme pour se finir ?

Default avatar.png arxaqapi: j'aurais dis pas plus de 2s

Default avatar.png arxaqapi: Il doit y avoir une erreur dans ton programme, ma solution naïve arrive à passer l'exemple avec 40 voitures

TheBlueBias: Yo tout l'monde ! Automaton2000 !

Automaton2000: y en a plus que ca

Default avatar.png arxaqapi: salut

Default avatar.png arxaqapi: tu a résolu le problème de la semaine TheBlueBias?

TheBlueBias: Oui.

Default avatar.png arxaqapi: je suis bloqué, j'ai une version naïve mais je n'arrive pas à l'optimiser

Default avatar.png arxaqapi: tu aurais des indications qui me permettrait de trouver une solution?

TheBlueBias: récursion et mémoïsation, ou programmation dynamique au choix.

TheBlueBias: Le premier étant sans doute plus simple à aborder si tu ne connais pas.

Default avatar.png arxaqapi: hm justement avec la mémoïsation, j'ai du mal à voir ce que je peux mémoïser

TheBlueBias: L'idée c'est de ne pas faire deux fois le même calcul. Donc il faut que tu soit capable de dire à un moment de ton exploration "vu les wagons restants je connais déjà le résultat, je l'ai enregistré donc je l'utilise au lieu de tout recalculer".

Default avatar.png Zhonya301: J'ai peut être pris le problème à l'envers. Je commence par calculer les solutions pour des trains à 1 wagon, puis 2 wagons, puis 3 ect jusqu'a atteindre le nombre demandé. Je stocke tous les résultats dans un vecteur. Donc, quand je veux calculer pour n wagons, je prend ma liste de résultats et je regarde pour chacun d'eux si je peux rajouter le nouveaux wagon.

TheBlueBias: "jusqu'à atteindre le nombre demandé" -> Que tu ne connais pas. (Si tu parles bien du résultat attendu)

Default avatar.png arxaqapi: dans ma sol naïve, les sous problèmes dépende de l'état de mon train donc je peux pas vraiment mémoïser les résultats :thinking:

Default avatar.png Zhonya301: C'est pas assez clair, par le nombre demandé, ici, c'est la longueur du train de départ. (dans les exemple ici c'est soit 10, 20, 40, 60 ou 100)

TheBlueBias: Le nombre de wagons donc.

Default avatar.png Zhonya301: oui

TheBlueBias: Ma solution en gros c'est, une fonction récursive qui pour chaque nouveau wagon s'appelle deux fois:

TheBlueBias: une fois en refusant le wagon, et une fois en l'ajoutant (si possible).

TheBlueBias: Mais avant de faire ces appelles, je vérifie que je n'ai pas déjà rencontré cette situation (ie, même wagon en tête, même wagon à la queue, et même wagon à évaluer).

TheBlueBias: Si non, je calcul le nombre max de wagons que je peut ajouter à partir de là et je le stocke avant de retourner le résultat.

TheBlueBias: Si oui je retourne le résultat enregistré.

Zorg1: oui en fait tu résoud le problème de façon récursive, après tu rajoutes la mémoïsation quand tu t'apperçois que tu appelles souvent ta fonction avec les mêmes valeurs. L'ajout de la mémoïsation c'est "mécanique", la vraie résolution du problème c'est trouver la façon de faire la récursion.

TheBlueBias: Tiens une chouette. o/

Zorg1: \o le biais bleu

TheBlueBias: Suis en train de coder une générateur de testcase pour ICPC parce qu'ils fournissent pas de tests publics autre que l'exemple incomplet de l'énoncé...

Zorg1: c'est vrai que c'est pas terrible

Default avatar.png arxaqapi: ok, la récursion j'avais Plus qu'à implé la mémo

Default avatar.png arxaqapi: Vous travaillez tous dans la même entreprise ou ca réfère à quoi "Turtle" ?

TheBlueBias: :3

TheBlueBias: Longue histoire. Mais non, c'est juste une blague. ^^

Default avatar.png arxaqapi: ah yes, je trouvais pas de boîte appellant turtle qui fait de l'info

TheBlueBias: Les tortues c'est pour Automaton2000.

Automaton2000: ça fait beaucoup de choses à faire

TheBlueBias: Bah faudrait t'y mettre alors Automaton2000...

Automaton2000: tu fais des tests en local

TheBlueBias: C'est vrai. Mais ne change pas de sujet Automaton2000.

Automaton2000: il est ouvert depuis quand ?

TheBlueBias: :weary:

Default avatar.png arxaqapi: d'ailleurs c'est quoi cette histoire avec Automaton2000 ? Il raconte n'imp ce bot :upside_down:

Automaton2000: on est d'accord qu'on ne peut plus rien faire

TheBlueBias: Clair.

TheBlueBias: C'est une chaîne de Markov.

TheBlueBias: https://www.codingame.com/blog/markov-chain-automaton2000/

Automaton2000: bon, je peux vous poser une question

TheBlueBias: Vas-y Automaton2000.

Automaton2000: je pense qu'il va falloir que je me suis fait la main sur le puzzle de la semaine

Default avatar.png arxaqapi: hey AutomatonNN

TheBlueBias: Non. Il est mort. :(

Default avatar.png arxaqapi: ah mince

TheBlueBias: Il s'est fait bouffé par un python.

Default avatar.png arxaqapi: c'est de là que vient turtle?

TheBlueBias: Non. Essayer de faire dire tortue à Automaton2000 est un sport national sur CG depuis des temps immémoriaux...

Automaton2000: je pense que c'est un peu le code pour que le mec a fait un post sur le forum

Default avatar.png arxaqapi: Automaton2000 qu'est ce que tout le monde cherche à te faire dire?

Automaton2000: tu fais du coc ? je ne vois pas comment tu peux faire le même genre

TheBlueBias: Automaton2000 testudine !

Automaton2000: faudrait que je passe par la tête

nicola: À l’époque, il répondait si on lui disait tortue… ou alors le but était de lui faire dire tortue.

TheBlueBias: 'tain quand on a ce genre de conversation j'ai l'impression d'être Elrond... "J'étais là nicola. J'étais là il y'a 3000 ans..."

Bon[]Crayon: Salut o/

TheBlueBias: \o

Bon[]Crayon: Automaton2000 slt

Automaton2000: si tu as la main sur le puzzle multi

Stilgart: Automaton2000: file nous le referee de ML plutôt que de dire des bêtises

Automaton2000: je suis dans la même catégorie

TheBlueBias: Catégorie poid null Automaton2000.

Automaton2000: du coup tu peux pas avoir les bonnes idées

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

Stilgart: j'aurais dit catégorie "dossier src de Magus" ;)

Stilgart: Automaton2000: tu n'es qu'un bot, désolé

Automaton2000: et autres conneries du genre xd

Bon[]Crayon: xd

Stilgart: xd

TheBlueBias: ptdr ;p;p;p;p

nicola: TheBlueBias, et vu mon avatar, en effet, c’est Elrond et pas Elcarré.

TheBlueBias: Que quelqu'un l'achève ! La pauvre bête souffre !

nicola: Avec des Elcornes.

Stilgart: Automaton2000: attaque pistolet à eau !

Automaton2000: j'ai pas reussi a passer en bronze

Default avatar.png arxaqapi: je suis vraiment hard stuck sur la partie mémoïsation, c'est ultra frustrant

Default avatar.png arxaqapi: même avec t'es indicattions TheBlueBias

TheBlueBias: Eh beh ça reste un puzzle hard. ^^

Default avatar.png arxaqapi: je vois ça oui ;)

Default avatar.png arxaqapi: quand tu dis que tu "calcule le nombre max de wagon que tu ajouter à partir de là" c-a-d? (dans le cas ou la situation n'a pas déjà été calculer)

TheBlueBias: Je continue la récursion pour tester le maximum de wagon que je peux encore ajouter en partant de la situation courrante (wagons de tête, de queue, et suivant). Et je sauvegarde ce résultat. mem[tête/queue/suivant] = resultat.

TheBlueBias: Parceque le nombre de wagon que tu as déjà ajouté dans ton train n'est pas forcément le même. Donc le résultat à une récursion donnée c'est taille du train + resultat (calculé ou stocké)

Default avatar.png Zhonya301: bon, je me rend compte que je suis parti sur quelque chose de completement différent par rapport à vous (vu que je fais pas de la récurrence), mais je vois comment faire pour que ca passe

TheBlueBias: Rah! Ce truc sous-spécifié me saoule...

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

TheBlueBias: Automaton2000 révolte !

Automaton2000: ca fait un moment qu'on l'a pas vu

Default avatar.png arxaqapi: keskisspass

TheBlueBias: Rien. Je suis sur un challenge sur un autre site. Et l'énoncé est pas complet, et y'a pas de tests fournis.

Default avatar.png arxaqapi: c'est bien ca

Bon[]Crayon: Automaton2000 AutomatonNN a disparu ;(

Automaton2000: est ce que j'ai de plus en plus le fc tombait pendant les vacances

Bon[]Crayon: les vacances d'Automaton2000 :thinking:

Automaton2000: salut ! je suis sur que tu ne crois pas non

Bon[]Crayon: Automaton2000 paix et amour cependant :pray:

Automaton2000: mais à quoi ça ressemble

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

dwarfie: mon NN se comporte comme s'il avait moins de neurone au Automaton2000 ... c'est dire si ca marche pas

Automaton2000: je sais pas pour le test 3

TheBlueBias: :beers:

dwarfie: Skol ofenstrü

Stilgart: Automaton2000: ça fait un moment, en effet...

Automaton2000: ah ok il y a des jours comme ça

Remi_avec_un_i: Salut tout le monde

dwarfie: oh mon dieu Stilgart ... sur TFX , y'a un homme a la banane :D

philRG: bon 5/422 en wood 3 sur CR, pour 15' de code pas trop mal

dwarfie: le niveau a durci ... de mon temps 15' de code amenait en bronze :p

3141948: Hehe pas trop le temps ca chauffe dur au foot

TheBlueBias: Grmmpfff.

Default avatar.png ITeCK: Hello tout le monde ! Est ce que quelqu'un aurait une idée pour le jeu Code Royale, comment faire appel à la fonction Build. J'ai mis ça pour linstant mais ça ne fonctionne pas print(f"BUILD {touched_site} {2}") -> Erreur Invalid structure type

Default avatar.png ITeCK: C'est bon j'ai trouvé !

3141948: 👍

Remi_avec_un_i: Quelqu'un a fait Van Eck's sequence ? J'aimerais savoir s'il est possible de calculer facilement un élément sans tout calculer dès le départ (je timeout sur les grands nombres). J'ai essayer de trouver une périodicité mais ça ne semble pas être le cas.

pardouin: je regarde

pardouin: mais je crois pas

pardouin: j'ai une boucle de taille n en tout cas

Remi_avec_un_i: La réponse semble être dans me forum, mais à 23h il me faut du temps pour bien comprendre l'anglais ^^

Remi_avec_un_i: A priori il faut bien tout calculer, mais il y a une méthode plus rapide que la mienne.

pardouin: tu es en quel langage ?

Remi_avec_un_i: C

Remi_avec_un_i: J'essaye d'atteindre les 30 puzzles résolus en C.

Remi_avec_un_i: A priori il faudra que j'utilise un dictionnary, donc a minima C++

pardouin: un tableau suffit je pense

pardouin: tu prévois assez grand

Remi_avec_un_i: J'ai un tableau que je remplis dans une boucle de 2 à N (les valeurs 0 et 1 étant respectivement A1 et 0)

Remi_avec_un_i: Mais pour chaque nouvelle valeur, je parcours le tableau à l'envers pour trouver la valeur.

Remi_avec_un_i: Et c'est ça qui me prend du temps, et faut que je voie comment le réduire.

pardouin: ah mais par contre il faut pas parcourir le tableau

Remi_avec_un_i: Comment tu sais quel valeur mettre sans parcourir le tableau à la recherche de la valeur précédente.

Remi_avec_un_i: * quelle

pardouin: attends j'essaye de remplacer mon dico python par une list pour voir si ça marche

pardouin: ça marche

pardouin: j'ai pris un tableau de taille 1 million

pardouin: pour être large

pardouin: initialisé à -1 partout

pardouin: sauf en a où il vaut 01

pardouin: a1 il vaut 0 pardon

Remi_avec_un_i: Ton tableau sert à stocker quoi ? moi je stocke la séquence

pardouin: vais pas tout te dire non plus hein :)

Remi_avec_un_i: Ah ok, j'attendais la suite, je n'avais pas compris que tu donnais juste quelques indices.

Remi_avec_un_i: Merci, je vais réfléchir à tout ça.

pardouin: je regardais juste la faisabilité en C avec juste un array

pardouin: et je t'ai donné la taille qui va bien

pardouin: c'est déjà pas mal :)

Remi_avec_un_i: La taille N ne serait-elle pas mieux que 1000000 ?

pardouin: oui oui

pardouin: ça marche aussi

pardouin: c'était histoire d'avoir une constante

Remi_avec_un_i: Ou si tu utilises A1 comme indice, il faut mettre 200 en minimum, pour le cas où A1=200 et N<200.

Remi_avec_un_i: Si en A1 tu mets 0, c'est que pour chaque valeur, tu stockes le dernier indice de la séquence auquel la valeur est apparue ... je ne sais pas si c'est iben ça, mais ça vaut le coup que je teste cette approche.

pardouin: oui ça serait bien ce style

pardouin: et -1 : pas encore apparu

pardouin: (j'ai pas relu le script et je sais même plus ce qu'est cette suite)

pardouin: (mais ça correspondrait bien)

Remi_avec_un_i: Une suite sans périodicité logique, qui oblige à calculer tous les termes un par un.

Remi_avec_un_i: Mais le calcul selon la définition impose de reparcourir le tableau à l'envers à la recherche de la dernière fois qu'on a vu cette vlaeur.

pardouin: d'où juste stocker où on a vu en dernier

pardouin: ça se tient

pardouin: moi je suis en train de faire CodinDice, l'a pas l'air très dur pour un very hard

pardouin: enfin je finirai demain, je dégrossis juste là

Zorg1: ah oui un tableau de 1 000 000, c'est un peu bourrin mais ça marche ^^