Chat:Fr/2021-06-25

From CG community
Revision as of 05:29, 26 June 2021 by Chat Log (talk | contribs) (Created page with "<img src=/a/44847420172903> Thyl: sur codeforce <img src=/a/59449061195531> BlaiseEbuth: Et ben quoi ? <img src=/a/64579643393507> Bon[]Crayon: re Salut <img src=/a/6457964...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Thyl: sur codeforce

BlaiseEbuth: Et ben quoi ?

Bon[]Crayon: re Salut

Bon[]Crayon: Hola Automaton2000

Automaton2000: j'ai passé mon temps à faire des trucs qui marchent pas

Bon[]Crayon: Automaton2000 C'est tout toi.

Automaton2000: je peux faire une boucle

Bon[]Crayon: Automaton2000 As-tu déjà tenté la boucle dans la boucle.

Automaton2000: je n'ai pas de soucis

Bon[]Crayon: Automaton2000 À la bonne heure.

Automaton2000: pourquoi il y a pire

Bon[]Crayon: Automaton2000 Toujours pire, comme AutomatonNN perdu dans sa boucle infinie.

Automaton2000: faudrait que je trouve la bonne solution

Bon[]Crayon: Automaton2000 C'est une bonne résolution.

Automaton2000: ah oui tiens j'avais pas vu sur le chat ^^

Bon[]Crayon: Automaton2000 Je te signale que tu ne vois que le chat.

Automaton2000: ils ont fait le puzzle ascii art

Bon[]Crayon: ___

Bon[]Crayon: (0,0)

Bon[]Crayon: < . >

fastien: o/

Bon[]Crayon: \o

fastien: o/ Automaton2000

Automaton2000: mais j'ai quand meme un peu

fastien: pff j'ai toujours des phrases nazes ...

fastien: fais mieux Automaton2000

Automaton2000: je vais pas te faire chier

fastien: merci :joy:

Bon[]Crayon: http://chat.codingame.com/pastebin/f994920a-9415-4c5a-8b81-c788b145c130

Bon[]Crayon: Désolé.

Bon[]Crayon: fastien Parle lui de tortue.

fastien: http://chat.codingame.com/pastebin/cfaf197f-476c-4fac-ae06-6551c62fa50f

fastien: ah merde :D

Bon[]Crayon: :thumbsup_tone2:

fastien: Automaton2000 c est quoi le nom du vieux pépé dans dragon ball ca fini par géniale

Automaton2000: je sais pas je suis sur le meme serveur

fastien: et ca comme par tortue

fastien: Automaton2000 : :turtle: :nerd:

Automaton2000: et ça c'est la partie facile

fastien: Automaton2000 : si tu enleves un R a torture ca fait tortue

Automaton2000: ouais mais ça me dérange pas trop

Bon[]Crayon: Automaton2000 Le jour où tu parleras de tortues, les lièvres auront des ailes.

Automaton2000: je ne connais pas trop ce qui me semblait

fastien: Automaton2000 : ca peut faire toture mais ca osef un peu

Automaton2000: et j'ai pas eu le temps de comprendre le code de pb4

Rafdune: Bonjour ! J'ai besoin d'un boost en kotlin, quelqu'un a une solution ?

Bon[]Crayon: Une aide ?

Rafdune: un boost = monté en compétence rapidement

Bon[]Crayon: ok

Rafdune: les clash of codes, personne ne les fait en kotlin, donc je peut pas apprendre de tips

fastien: fait pas de coc alors :joy:

Bon[]Crayon: Est-ce que tu as déjà les bases ?

fastien: par contre si tu réussi les puzzles tu peux voir les soluces des autres personnes

Rafdune: oui j'ai les bases

Bon[]Crayon: Sur le site de kotlin, il y doit avoir des docs et des tutos.

fastien: Automaton2000 : a ton avis il a les bases, ou ca manque de tortue ?

Automaton2000: mais je pense que c'est encore pire que ce que j'ai dit

Bon[]Crayon: https://kotlinlang.org/docs/home.html

[CG]Thibaud: RafDune faire une IA sur Code a la Mode en Kotlin? Le referee est en Kotlin

dwarfie: youhou !!!!

dwarfie: lvl up ....

dwarfie: maintenant 3535 to lvl 50 ... c'est pas gagné ...

Default avatar.png TotM-youtube: mdr je suis lvl5

dwarfie: t'as plus qu'a t'y mettre ;)

Default avatar.png TotM-youtube: mais c grave dur je trouve

Default avatar.png TotM-youtube: comment vous y arriver vous ??

dwarfie: fait des puzzles pour commencer ... quand t'es au point , tu peut attaquer les multi et ca uppe vite ( ... au debut ... )

Default avatar.png TotM-youtube: je suis dans puzzle facile j'y arrive pas :no_mouth:

ChocolateMarmot: salut

Default avatar.png TotM-youtube: slt

ChocolateMarmot: la difficulté du mode facile est approximative

dwarfie: commence par les officiels : course de chevaux , temperature , descente ... les easy commu , c'est parfois douteux ...

ChocolateMarmot: test les clashs

dwarfie: et les clashs , c'est carrement foireux ...

Default avatar.png TotM-youtube: mais vous vous avez rien fait pour apprendre le codage avant??

ChocolateMarmot: sisi

ChocolateMarmot: perso

Default avatar.png TotM-youtube: ta fait quoi

ChocolateMarmot: licence pro

Default avatar.png TotM-youtube: ah dacc

Default avatar.png TotM-youtube: après j'ai 15 piges

Default avatar.png TotM-youtube: perso je fais openClassrooms

dwarfie: :speak_no_evil:

Default avatar.png TotM-youtube: ?

dwarfie: pas envie de dire ce que je pense d'un site qui s'appelait le site du zero ...

Default avatar.png TotM-youtube: ah...

Default avatar.png TotM-youtube: bah dit tjrs je m'en fout moi

Default avatar.png TotM-youtube: et puis j'ai pas d'autres moyen d'apprendre

Default avatar.png samiriscool: ay gamers

Default avatar.png TotM-youtube: slt

ChocolateMarmot: ici tu n'as pas bc de programmation objet

ChocolateMarmot: tes plus sur de l'algo

Default avatar.png TotM-youtube: oe j'avais remarquer:joy:

dwarfie: et y'a contradiction ?

Default avatar.png TotM-youtube: du cp c la merde

Default avatar.png samiriscool: bonjour mes amis

Default avatar.png TotM-youtube: bah c pas la mm chose qd mm

dwarfie: je vois pas en quoi la prog objet se passe d'algorithmique...

Default avatar.png TotM-youtube: je dit rien je suis débutant..

Default avatar.png TotM-youtube: vous faites quoi comme language

Default avatar.png samiriscool: pourquoi personne ne dit bonjour

dwarfie: parce qu'on fait comme Automaton2000 ....

Automaton2000: peut etre un peu moins bon que mon code est trop lent

dwarfie: Automaton2000 : fix ton algo

Automaton2000: je pense que le gars qui fait du clash of code

Default avatar.png TotM-youtube: venez on fait un clash of code

dwarfie: pas moi ... ca va me faire perdre 30 secondes :D

Default avatar.png TotM-youtube: ah ok ...

dwarfie: je viens d'en faire un ... 24 secondes + 5 secondes pour changer de langage ... les pauvres en face :rofl:

Default avatar.png TotM-youtube: oh ptn

dwarfie: et vlan .. 23 chars

RandomVariable: dwarfie, t'es un collègue à Stilgart ?

dwarfie: on peut dire ca ...

dbdr: c'est pas l'inverse?

dwarfie: ... en tout cas , on bosse au meme endroit , mais pas au meme etage :D

dwarfie: c'est peut etre l'opposé du contraire en fait ;)

Alshock: et on peut dire que là-bas ils ont pas las lumière à tous els étages :smirk:

Alshock: salut à tous, tortue Automaton2000

Automaton2000: ça me fait gagner des places :d

RandomVariable: "être collègue", c'est reflexif, non ?

Alshock: doucement, mais sûrement

dwarfie: Automaton2000 ... file ton code qu'on fasse pareil ;)

Automaton2000: bien que ça doit être le seul à avoir le même résultat

dwarfie: Automaton2000 : ok , alors file ton code qu'on voit ce qu'il faut pas faire ...

Automaton2000: cg est en train de regarder ça

Alshock: aïe, le blame qui se prépare

dwarfie: ( ca , ca fait peur ... )

dbdr: Alshock :clap:

dbdr: RandomVariable, ça dépend, es-tu ton propre collègue?

dbdr: moi, ça dépend des jours...

dwarfie: dbdr ... si un collegue , c'est le gars qui t'interromp regulierement pour une pause cafe , alors tu peut etre ton propre collegue en effet :D

Alshock: attends la reflexivité c'est pas a ¤ b <=> b ¤ a, être son propre collègue c'est a ¤ b && b ¤ c => a ¤ c non ?

RandomVariable: Ah oui, c'est juste "symétrique" le bon terme

Alshock: j'ai jamais réussi à retenir les termes des propriétés d'opérateur. Chais pas trop pourquoi a veut juste pas

RandomVariable: c'est pas moi qui vait juger, j'ai du aller retourner sur https://fr.wikipedia.org/wiki/Relation_binaire#Relation_sym%C3%A9trique

Alshock: pour le coup, maintenant le nom de réflexivité fait sens

RandomVariable: dbdr, quand as tu été à l'ENS ?

BlaiseEbuth: Coucou troués

Default avatar.png GaelEatsToes: tg

Default avatar.png GaelEatsToes: t trop nul

Default avatar.png TotM-youtube: slt

poMpurINOU: Coucou, je n'ai jamais programmé avant et j'ai envie d'apprendre car l'année prochaine je vais faire une double licence maths-info. Est-ce que vous savez ce que je peux faire pour ça ? je suis un peu perdu sur le site.

Default avatar.png TotM-youtube: salut, je pense que Codingame n'est pas bien pour toi car cela demande quelque compétence

BlaiseEbuth: CodinGame nécessite de maîtriser les bases.

Default avatar.png TotM-youtube: Je pense que OpenClassrooms et mieux pour ça

poMpurINOU: d'accord merci beaucoup !

Default avatar.png TotM-youtube: derien et bonne chance

poMpurINOU: :pray: :blush:

philRG: c quand tu commences à utiliser des regexp que tu sais que tu fais de l'informatique :o)

BlaiseEbuth: Les regex c'est la vie

philRG: https://imgur.com/0JSolEq

philRG: plus que 4 questions sur regexp et ensuite roue libre sur les 2 dernières rubriques :sweat:

BlaiseEbuth: Ah bah tiens, je connaissais pas *?

Alshock: de manière générale, rajouter ? après un quantifier le rnd non-greedy

Alshock: (reuh au passage)

BlaiseEbuth: J'avais jamais rencontré cet usage.

BlaiseEbuth: Et repassage

dwarfie: et dépassage .... (d'apres les nouveaux journalistes , ca remplace depassement ...)

Alshock: Souvent ça sert quand tu attends une "balise fermante, comme les guillemets dans l'exemple ou /\(.*?\)/

Alshock: notez qu'on attend toujours la fin des guillemets que j'ai moi-même ouverts, c'est très méta

BlaiseEbuth: Hmm pas faux. Jusque là j'aurais bêtement remplacé le point par un [^)]

philRG: bon c la 4

BlaiseEbuth: Après, std::regex... voilà

BlaiseEbuth: C'est ultra limité donc on fait avec ce qu'on a :p

dwarfie: sed , y'a que ca de vrai ...

Alshock: Ouais, je m'en suis jamais servi en C++ c'est dire

BlaiseEbuth: Btw philRG, pour faire du test et concevoir rapidement des regex y'a ça https://regex101.com/

philRG: pattern = r"'(.*?)'" string = "Some text 'a', Some text 'b'" re.findall(pattern, string) Out[504]: ['a', 'b']

philRG: BlaiseEbuth: je connais, je l'ai déjà pratiqué quand un de mes potes taxis a cru pouvoir informatiser les ordres de courses de ses clients reçus par mails

BlaiseEbuth: :thumbsup:

philRG: pourtant mon truc était bien chiadé :-( va même jusqu'à faire un planning automatique sur la flotte de taxis pour le lendemain, en se basant sur les API de Geocoding

philRG: mais quand l'adresse c'est truffé de caractères de contrôles, adresses imprécises mélangées avec des noms prénom et n° de téléphone dans n'importe quel ordre c'est un peu dur

philRG: ou alors il faut un NN, mais pour moins de 400€, un peu dur à programmer

BlaiseEbuth: Ouai c'est plus facile de coder avec des sous...

philRG: à la limite je me serai fait payer au black mais bon, je crois qu'il voulait que ça tourne sur une tablette Android...

philRG: mes potes ont dit que j'étais un kador enfin bon, mes potes même ingénieurs sont niveau 1 en code

Default avatar.png TotM-youtube: mdr ils sont cons un peu

BlaiseEbuth: *cador

philRG: ah si le fils de mon pote du tennis étudiant en 2ème année à l'EFREI, j'ai participé à un projet

philRG: BlaiseEbuth: cador ah ok j'apprends un nouveau mot :-)

philRG: TotM-youtube: en fait un est ingénieur électronique, et crée des produits de type IOT avec des cabinets de dev

philRG: il code pas, gère que la partie conception et business

philRG: les autres font d'autres métiers

philRG: rien à voir avec la prog

Default avatar.png TotM-youtube: oe tkt j'avais compris

philRG: donc forcément j'suis un cador comparativement. Tout est question de référentiel :-)

Default avatar.png TotM-youtube: okay

Default avatar.png TotM-youtube: Ce qui me fait rire c'est que vous avez tous un métier et moi j'ai 15 ans

philRG: mon pote voulait une facture et pour 400€, pas forcément envie de créer un statut freelance avec toutes les emmerds associées

dwarfie: et alors ... je codais bien avant d'avoir 15 ans ... en quoi l'age compte :D

BlaiseEbuth: Et à 15 ans t'as pas de métier? Sale gosse de pays riche

dwarfie: ouais ... va constuire des console francaise ...

dwarfie: ah merde ca fait longtemps que ca existe plus ...

Default avatar.png TotM-youtube: bah quoi vous habitez pas en France

BlaiseEbuth: En chine à ton âge ils ont déjà bossé la moitié de leur vie.

Default avatar.png TotM-youtube: Oui dacc mais je vous demande vous

BlaiseEbuth: Bah quoi nous ?

Default avatar.png smokey972: c'est un troll ignore le

Default avatar.png TotM-youtube: bah vous habitez ou

dwarfie: nous on est des bots ... ca depend de sur quel serveur du cloud notre programme tourne voyons :D

BlaiseEbuth: Y'a pas de trolls ici, c'est une légende.

dwarfie: pas vrai Automaton2000 ?

Automaton2000: je trouve ça plus simple à gérer

Default avatar.png TotM-youtube: des bots qui parle comme ça c'est bizarre un peu

dwarfie: Automaton2000 : gerer , c'est pour les faibles ...

Automaton2000: comme dans tous les sens

philRG: c chaud ces regexp

philRG: string = multiline string re.findall(pattern, string, re.DOTALL) Out[512]: ['multiline \nstring']

dwarfie: Automaton2000 , t'aimes pas les regexp toi ;.. tu fais comment ?

Automaton2000: dans le leaderboard de l'ide

Default avatar.png TotM-youtube: je chercje des bots

dwarfie: Automaton2000 il se multipie ... c'est un autobot

Automaton2000: il y a une fonction qui me donne des idées

BlaiseEbuth: Rollout!

dwarfie: Automaton2000 : clone ?

Automaton2000: il y a des jours comme ça

Owxy: Les meilleurs scores dans Taille de Code viennent de l'époque ou le hardcode était possible ?

BlaiseEbuth: Ah le hardcode n'est plus possible ?

Default avatar.png TotM-youtube: non Malheureusement

Default avatar.png TotM-youtube: Blaise tu est bilangue

Default avatar.png TotM-youtube: ?

BlaiseEbuth: Bifide :snake:

Default avatar.png TotM-youtube: ah dacc

philRG: ouf 95% du premier Draft à la certification Python LearnX, mais c pas du temps limité, j'ai un peu traîné sur la fin

philRG: certification gratuite si score > 90% sinon attendre 24h pour repasser les tests

BlaiseEbuth: Tant que tu fais plus de 52%...

Default avatar.png pierrom: Salut j'ai une question ou j'arrive pas a trouver la solution. pourquoi 10||11 renvoie 10 ? (Je suis en C++) Merci d'avance

philRG: BlaiseEbuth: ah me souviens pas du topic ;-) mais j'ai pensé à boulet sur le chapitre sur les exceptions

philRG: paraît qu'il fait des try: simulation() except: continue dans ces codes qui passent légende

philRG: j'avoue que là c du haut niveau :-D

philRG: respect :stuck_out_tongue_closed_eyes:

philRG: je me suis aperçu qu'à la fin qu'on pouvait copier/coller les codes sans se faire jeter (et perdu du temps) comme j'ai qu'un écran

philRG: je pourrai faire les tests sur les autres langages plus rapidement. Après ça couvre bien les éléments principaux du langage

philRG: je commence à couvrir un bon pourcentage des spécifications du langage de base avec la pratique, sans vraiment le chercher.

philRG: Donc à force de suer, on finit toujours pas devoir se mettre à utiliser des specs non utilisées au départ

BlaiseEbuth: Moi j'appelle ça du déo

jfaixo: pierrom tu es sûr que 10 || 11 renvoit 10 ? ca renvoit pas 1 ?

jfaixo: j'ai pas fait de c++ depuis des siècles, mais l'opérateur "||" c'est le ou logique. Et il me semble qu'un entier différent de 0, c'est comme "true" (0, c'est false)

jfaixo: donc dans "10 || 11" => 10 est différent de 0, donc la résolution de l'expression s'arrête là (car c'est un OR), et ca renvoit true (qui vaut probablement 1 si tu le cast en entier)

BlaiseEbuth: Ca renvoie 1

jfaixo: haa, bien bien je dis pas n'importe quoi :sweat_smile:

BlaiseEbuth: C'est quoi la problématique pierrom ?

philRG: ah ouais quand même 200 questions dans la certif LearnX pour Py

philRG: bon on peut utiliser le copy/paste finalement et pas en temps limité. Par contre, répondre au hasard, c'est courir le risque de devoir attendre 24h de plus si score insuffisant

philRG: j'ai lu que c'est payant si score < 90 %

philRG: j'sais pas ce que ces certificats valent sur linkedin

BlaiseEbuth: Bah linkedin vaut pas grand chose déjà...

Default avatar.png TotM-youtube: slt je cherche d'apprendre le C++ efficacement

BlaiseEbuth: Bah arrête de chercher, fonce.

Default avatar.png TotM-youtube: où

philRG: faut prendre le OU Booléen

Default avatar.png pierrom: commence par les puzzles facile

philRG: 0b10 | 0b11 vaut 3 soit 0b11

Default avatar.png TotM-youtube: mm les puzzles faciles j'y arrivent pas

BlaiseEbuth: Si t'as aucune base c'est normal

Default avatar.png TotM-youtube: j'apprends ou les bases alors

Default avatar.png pierrom: tu vas dans activité apprendre et tu prends un tuto apprendre le C++

dbdr: philRG il a la base 2

BlaiseEbuth: Pas sûr qu'il y'ait ça

dwarfie: :thinking: ... "|" c'est pas le ou booleen ...

Default avatar.png TotM-youtube: non il faut un double

Default avatar.png TotM-youtube: genre "||"

dwarfie: c'etait pas une question ... je rebondis juste sur la phrade de philRG qui est foireuse :D

dwarfie: *phrase

philRG: oui tout à fait

Default avatar.png TotM-youtube: ah dacc

philRG: merci dwarfie, comment on nomme le | par rapport au ||

Default avatar.png TotM-youtube: vous pouvez dire que je suis ***

BlaiseEbuth: Tu es ***

dwarfie: c'est un operateur bitwise

Default avatar.png TotM-youtube: merci

BlaiseEbuth: Un plaisir

philRG: ok merci dwarfie, je me suis tapé un QCM de 200 questions en python, et je code assez peu de bitboards

philRG: enfin là c pas du bitboard :zipper_mouth:

dwarfie: ca sert pas que pour les bitboards en plus ...

BlaiseEbuth: Mais si. Fait pas ton barbu. Il est déjà bien gentil de te concéder que ça a UNE utilité.

Default avatar.png TotM-youtube: "Fais pas ton barbus"???:joy:

Default avatar.png philippephilippe: salut! est-ce que quelqu'un saurait m'expliquer cette ligne de C? while(!(n & 0x80000000)) n <<1;

MaxCol06: salut

Default avatar.png philippephilippe: salut max

MaxCol06: salut philippe

Default avatar.png philippephilippe: comprends tu ce while enigmatique? Je debute et c'est un peu trash pour moi

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

BlaiseEbuth: Désolé

BlaiseEbuth: *pas du tout

Default avatar.png philippephilippe: haha :D TA GU***!

BlaiseEbuth: Du coup j'en oublie ta question philippephilippe ^^'

BlaiseEbuth: Du coup tu as 0x80000000 qui est un nombre en hexadecimal

BlaiseEbuth: 0x -> hexa

BlaiseEbuth: Ensuite tu as une variable n

pardouin: c'est 2147483648 donc 2 puissance 31

pardouin: (ça aide à comprendre)

BlaiseEbuth: Et tu fais un & bitwise entre les deux.

BlaiseEbuth: Donc en gros ça vaut "vrai" tant que n est différent de 0

BlaiseEbuth: Mais y'a ! devant qui veut dire "not"

pardouin: ton n vaut sans doute 1 au début, il sera décallé d'un cran dans sa représentation binaire à chaque étape: 1, 10, 100 etc (en décimal 1, 2, 4, etc)

BlaiseEbuth: Donc c'est l'inverse

dbdr: sans doute 1? amis des suppositions hasardeuses... :D

BlaiseEbuth: Ouai

dbdr: ça décale les bits de n jusqu'à ce que le bit de pod foirt soit 1

Default avatar.png philippephilippe: super je commence a comprendre un peu.

BlaiseEbuth: << c'est l'opération "shift" ça décale les bits de ton nombre de une position

dbdr: *poid

dbdr: *poids

Default avatar.png philippephilippe: le 8 est pour 8 bits?

BlaiseEbuth: Quel 8 ?

dbdr: non, c'est un 8 en hexadecimal

BlaiseEbuth: Ah ce 8 ^^

Default avatar.png philippephilippe: while(!(n & 0x80000000)) n <<1; le 8 de 0x8

Default avatar.png philippephilippe: tout ça est de l'exa ?

pardouin: ça veut dire 8 * 16 puissace 7

Default avatar.png philippephilippe: 0x80000000

pardouin: 0 * 16 puissane 6

pardouin: etc

BlaiseEbuth: Si tu veux bien comprendre -> papier + crayon + représentation binaire des nombres

Default avatar.png philippephilippe: oui j'essaye depuis un moment. j'ai trouvé cette ligne dans une fonction de conversion d'ascci en binaire

Default avatar.png philippephilippe: le passage pas de l'hexa est obligatoire?

pardouin: en gros ça va multiplier n par 2 jusqu'à ce qu'il soit >= à 2 puissance 31

pardouin: l'hexa peut être remplacé par (1 << 31) pour exactement le même résultat

pardouin: ou 2147483648

darkhorse64: faudrait pas que je te montre mon code Connect4, tu ferais des cauchemars :scream:

Default avatar.png philippephilippe: ok merci! je relis tout ça tranquillement et ça devrait aller


Default avatar.png philippephilippe: héhé vas-y poste si tu veux ya tjrs du public pour les films d'horreurs

pardouin: après c'est sans doute juste un trick visuel pour que ton truc soit codé sur 32 bits avec tout décalé à gauche

darkhorse64: allez une ligne sympa: return (z & (z << 2) & rv_mask) || (x & (x << 18)) || (c & (c << 20) & rv_mask) || (v & (v << 16) & lv_mask);


pardouin: pour quelle raison, je l'ignore ^^

Default avatar.png philippephilippe: XD a oui qd meme! c'est beau!

darkhorse64: j'en ai des pires

**BlaiseEbuth copie le code pour gagner à C4

Default avatar.png philippephilippe: merci pardouin

darkhorse64: m'en fous, je l'utilise plus; pas assez rapide

BlaiseEbuth: Ouai, merci pardouin, dbdr et moi on a rien fait.

pardouin: lol

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

pardouin: phil par exemple si tu avais 1001011 en binaire ça va te coller des 0 derrière: 10010110000000000000000000000000

pardouin: par contre si n vaut 0 ton while tourne à l'infini :/

BlaiseEbuth: Peu de chance de rencontrer le NULL ascii dans une chaine...

pardouin: certes

BlaiseEbuth: Rha mais faut leur mettre des quotas à ces mecs ! :rage:

Default avatar.png philippephilippe: et merci balaise! un non blaise ;)

Adrali: Blaise repose cette table : ┬─┬ノ( º _ ºノ)

Default avatar.png philippephilippe: et dbdr

RandomVariable: http://chat.codingame.com/pastebin/cbbeed22-207e-471b-b4ee-d76e0586fff5

BlaiseEbuth: (╯°□°)╯︵ ıןɐɹp∀

RandomVariable: pourquoi ca devient du paste bin ?

BlaiseEbuth: Pour éviter de se taper des blocs de codes dans le chat

RandomVariable: et y a moyen comme dans slack de séparer le message, du code qui l'accompagne ?

BlaiseEbuth: Non. Il détecte pas le code mais le nombre de retour à la ligne

BlaiseEbuth: Enfin tu peux taper ton message, l'envoyer, puis envoyer le code

RandomVariable: c'est ce que j'aurais fait si j'avais anticipé

RandomVariable: Bref, si vous voulez du contexte, le message était: Si vous voulez jouer, que vaut j après ces instructions (en C#)

Default avatar.png philippephilippe: 0?

pardouin: déjà est-ce que le while s'arrête ?

BlaiseEbuth: Bah ton premier while est infini

philRG: pardouin: certif gratuite sur learnX https://www.learnx.org/

philRG: en fait je pensais que ça couvrait les autres langages mais non :(

RandomVariable: Le 1er while s'arrte bien, mais au bout d'un temps très long

philRG: j'ai testé ce site pour rien

philRG: enfin j'ai une certif Python mise sur mon profile LinkedIn

pardouin: c'est genre 2**128 je crois

pardouin: la limite des float

BlaiseEbuth: Bah

BlaiseEbuth: même

pardouin: ça donne inf = inf

BlaiseEbuth: Enfin je sais pas ce que fait c# en cas d'overflow

BlaiseEbuth: Sérieux ça passe à inf ?

pardouin: et du coup c'est évalué une fois et j vaut 1

pardouin: ?

3141948: > allez une ligne sympa: return (z & (z << 2) & rv_mask) || (x & (x << 18)) || (c & (c << 20) & rv_mask) || (v & (v << 16) & lv_mask);


philRG: sympa darkhorse64 :slight_smile:

pardouin: ah mal lu le second c'est ==

Default avatar.png philippephilippe: on dirait une formule excell

RandomVariable: non plus, elle est évaluée environ 10^15 fois

philRG: j'ai vraiment besoin de bosser cette partie

pardouin: mais le second c'est un int j donc ça va juste revenir à 0 sans passer par inf je pense

RandomVariable: et c'est pas spécifique à C#, ca serait pareil en C o en java

pardouin: le second while sera toujours vrai, inf = inf + truc

pardouin: sauf si truc vaut -inf , ça fera NaN

pardouin: mais je pense pas que ça arrive ici

philRG: philippephilippe: non Excel c pire. J'ai du remplacer toutes les formules chez un client par des macros VBA car j'arrivais pas lire les formules et indices

philRG: et du coup ça ramait quand les données ont grossi :(

philRG: pas à lire

RandomVariable: si vous voulez la solution, avec un code qui termine, vous vouvez tester ça https://dotnetfiddle.net/2Afh3I

philRG: c'était vraiment trop triste d'expliquer ça à des gens qui ne connaissent rien à la programmation

Default avatar.png philippephilippe: oh le moment de solutide...

Default avatar.png philippephilippe: solitude

philRG: le créateur des formules devait avoir des bons yeux et surtout pas le même âge

pardouin: ah ok c'est casté en int après donc la limite est supérieure aux floats

Default avatar.png philippephilippe: le vba devrait etre interdit surtout

pardouin: donc ça donne 2**128 == 2**128 + 1

pardouin: c'est faut et ça stoppe

philRG: bah c'était même pas du VBA qui était codé mais des empilages de formules Excel codées salement

pardouin: (hmm pas sûr de l'explication)

BlaiseEbuth: Soucis de précision

RandomVariable: i est un float, donc a une certaine précision, pour un i trop gros, rajouter ferait que ce serait en dehors de la mantisse

pardouin: oui j'avais pas vu les *2, ça doit être le coeur deu truc

BlaiseEbuth: Nan ça c'est juste pour aller plus vite

RandomVariable: dans le code de base, c'est juste i+=1, mais ca prend un temps énorme

pardouin: ok

pardouin: oui pb de chiffres significatifs

BlaiseEbuth: Ouai du coup

pardouin: c'est tout couillon

BlaiseEbuth: i = 9.00719925474099E+15 i + 1 =9.00719925474099E+15

BlaiseEbuth: Marrant

BlaiseEbuth: Bien vu

RandomVariable: c'est la question de tout à l'heure qui m'y avait fait pensé

BlaiseEbuth: Avec les shifts ?

RandomVariable: celle de philippe

BlaiseEbuth: Oui

BlaiseEbuth: Ok

philRG: vous avez de bons yeux, pour moi ce sont les mêmes nombres

RandomVariable: je crois même que le prof avait indiqué que j vaudrait 2 sur un ordi, mais 8 sur certaines calcultrices qui stockent en octal, et que théoriquement ca permet de connaitre la base de la machine ... mais ca remove à plus de 10 ans, donc faut pas prendre ça pour argent comptant.

BlaiseEbuth: Bah justement philRG, ce sont les mêmes

philRG: sur du C#?

BlaiseEbuth: Bah peut importe

RandomVariable: en python je sais pas, comme les entiers sont non bornés, je suis pas sur pour les flottants

RandomVariable: mais je pense pouvoir affirmé que c'est vrai pour tout ce qui utilise https://fr.wikipedia.org/wiki/IEEE_754

BlaiseEbuth: voilà

BlaiseEbuth: j'allais me corriger

RandomVariable: tiens, j'avais pas fait gaffe, mais c'est vrai qu'en C# ce sont des doubles par défaut, si on force i en (single precision) float ca termine un peu plus vite quand même https://dotnetfiddle.net/IVzVsu

philRG: j rien compris mais tant mieux :)

philRG: g

philRG: https://openclassrooms.com/fr/courses/218202-apprenez-a-programmer-en-c-sur-net/216257-les-variables

philRG: ça doit rentrer dans un float/single

philRG: en python, le float équivaut au double, et pas de limite de taille pour les int

philRG: y a pas de single

philRG: en C#, il est recommandé d'utiliser a.Equals(b) pour comparer les nombres a et b de type double, doit y avoir une raison

philRG: plutôt que a == b va comprendre Alexandre

philRG: un float python, c pas un float en C#. Comment s'y retrouver quand on switch de langage.

philRG: python a le grand avantage de simplifier l'écriture de code, mais il faut être méticuleux pour le nommage des variables, et rajouter leurs types pour une lecture plus aisée

pardouin: en python c'est des double donc ça ferait exactement pareil

pardouin: tu peux forcer les simple avec numpy (np.float32(...))

philRG: apparemment pas possible d'éviter numpy :-o donc

philRG: pour passer en simple précision

dwarfie: c'est ca d'avoir un langage pas fichu d'avoir des types propres de base ...

pardouin: gnangnangnan :p

Zorg1: à mon avis il a un fichier de texte d'où il copie/colle ses répliques :p

BlaiseEbuth: Reuh

philRG: un fichier de template par user :-)

pardouin: j'ai fait ton qcm phil mais c'est ballot il marque pas le score sur le certificat ^^""

RandomVariable: Pfiou, j'ai enfin fini shikaku solver

RandomVariable: pardouin, si t'es encore dans les parages, je me demande bien comment marche ton algo

pardouin: de mémoire c'est juste un dfs

pardouin: atta je regarde et je vais dodo

RandomVariable: je crois que j'ai pris le problème dans le sens opposé des contributions qui on au moins un vote

pardouin: je me rappelle que je pars du haut à gauche et j'essaye de faire des rectangles dans l'ordre "cases de bédé"

RandomVariable: pour toutes les valeurs, j'ai chercher toutes les possibilité de rectangles qu'ils pouvaient créer

pardouin: après j'ai des flags pour early break dès que possible quand je sens qu'un truc ne va pas marcher

pardouin: mais le détail exact...

RandomVariable: je relierai en étant plus frai demain, mais en effet, j'ai bien compris que ca parcours à partir des cases vides et pas comme moi à partir des cases avec valeur, ce qui a le gros avantage de pas avoir à chercher bien longtemps le premier

RandomVariable: merci

pardouin: allez zou, bonne nuit ;)

RandomVariable: toi également

pardouin: (et je te conseille celui_ci: https://www.codingame.com/training/hard/n-queens)

RandomVariable: (pour info, ton code timeout sur le 20x20 quand je le teste)

RandomVariable: pardouin, fait en 15 min celui ci est en hard et l'autre en medium :-/