Laminator: those aren't the same types of challenges. Completely different skill sets.
Laminator: I'll take glory and recognition over the prize money as is with most software engineers. But it's still something. And a lot more companies know hackerrank
eulerscheZahl: that hackerrank contest is for India only
eulerscheZahl: This contest is open to participants from India only. The ratings of this contest will reflect on your HackerRank Profile.
jrke: oh only for india?
eulerscheZahl: hackerrank often has that kind of limitation
eulerscheZahl: india only, women only, students only, ...
MadKnight: when Automaton2000 only ?
Automaton2000: you will be more interesting
jrke: then i should sign up there also
eulerscheZahl: collides with the reply challenge anyways
Laminator: wow, I've been missing bold text since grade school. haven't stopped apparently.
Laminator: Sorry everyone
jacek: frontend eh? then i dont have it :v
wlesavo: I though cg is facebook for coders
AntiSquid: i have account on codepen and no it's not facebook ...
AntiSquid: it's more like github with pretty visuals
AntiSquid: and an IDE !!
AntiSquid: khalid-shammout facebook is pure cancer
jacek: do you do fronten
AntiSquid: then CG is a social network lol
jacek: but im antisocial :c
Uljahn: great part of CG is a cats community, so you should enjoy it :smiley_cat:
wlesavo: wow new nobel announced, 3/4 prizes last years basically for astronomy/relativity
MadKnight: that's not a guy, that's Automaton2000
Automaton2000: who is the best way to do that?
AntiSquid: nxnjitsu explain yourself
jacek: AutomatonNN can explain
jacek: or not
LambertV: salut les zboubs
AntiSquid: maybe i should just ban rude level 3s
MadKnight: yea we all come through this
Uljahn: literally hitler :scream_cat:
MadKnight: through this phase
TheSpiffiest: well who doesn't like to loosen things?
AntiSquid: it's the mandela effect spelling, TheSpiffiest
TheSpiffiest: bonjour tendeur
TheSpiffiest: Ah, my language skills are weak if they aren't compiled
AntiSquid: mandela effect refers to collectively shared false memories, when a group of people remember the same thing, but that thing is false and never happened
MadKnight: oh they're all in #fr
MadKnight: spamming tons of spam
AntiSquid: good lol
MadKnight: the spammers i mean
MadKnight: the class
TheSpiffiest: sounds like trump supporters in my country, but it can happen in about a week
AntiSquid: they don't need chat for class .
AntiSquid: in what way TheSpiffiest ?
TheSpiffiest: his supporters constantly explain away every bad things he done.
TheSpiffiest: He made fun of a crippled guy by immitating how his arms don't work. Oh, not that's just how he makes fun of people.
TheSpiffiest: anyway they have a reality distortion field
TheSpiffiest: I have to run, but I'm not a fan of the president of usa to be polite. ttyl all, must get to work
AntiSquid: iliboss78 #fr
AntiSquid: TheSpiffiest you're one of the few that explains to me what they disagree with from the anti-trump camp, i usually get angry replies .
AntiSquid: what warzone ?
AntiSquid: oh lame, i thought you meant a different kind of warzone (some exploitable pc)
Shadowtick: I use some apps to just make it where I have lot of enchants on my personal worlds
Shadowtick: I use toolbox for minecraft pe so I can make a knockback stick that has knockback 25 on it
Shadowtick: its funny when you hit something and it just goes flying away
eulerscheZahl: Oups An error occurred (#510): "An error has occurred during compilation/execution.".
eulerscheZahl: is it just me?
eulerscheZahl: might be the puzzle contribution that causes the 510
eulerscheZahl: only happens on some testcases
Shadowtick: can I have some help with my code for csb
wlesavo: same eulerscheZahl but it is more random, for example i can get an error on the test case that was alredy executed once
wlesavo: but it does look to correlate with test case
eulerscheZahl: same for me
eulerscheZahl: did you also try 2048 or something else?
wlesavo: also 2048, it is like that a couple of days at least
eulerscheZahl: oh, didn't try it for a while
eulerscheZahl: https://prnt.sc/uu4xnn might even be too easy as an optim :thinking:
eulerscheZahl: there's still plenty of room for improvement for me. but that code is still pretty basic
wlesavo: nice, even if too easy it is nice addition to optims
eulerscheZahl: wait, that was my good testcase https://prnt.sc/uu4z0a
wlesavo: i think this error might start to occur around the time you added ignoring characters, at least it was the first time i got one
eulerscheZahl: i'll create a new contribution to see if that one's buggy too
eulerscheZahl: submit finishes there, seems better
wlesavo: i wonder what is the problem then
eulerscheZahl: no idea
eulerscheZahl: i know there's some problem with replacing testcases
eulerscheZahl: but that didn't happen recently
wlesavo: also, do you plan to release after finishing a bot?
eulerscheZahl: put up for approval? yes
eulerscheZahl: illedan wanted to have a bit time to test before it goes to moderation
wlesavo: yeah, thats what i meant. nice
eulerscheZahl: that's the testcase issue: https://github.com/CodinGame/codingame-game-engine/issues/35
eulerscheZahl: might be related to the stuck submits? no idea
eulerscheZahl: and i suppose nothing will happen before the contest
eulerscheZahl: the way i know CG, they are working on the game till the last day
eulerscheZahl: (i guess my community contest experience isn't 100% representative)
wlesavo: so do you plan to keep a new contribution instead of the old one?
eulerscheZahl: i don't want to (removes old comments and feels like farming double upvotes)
eulerscheZahl: but i think i have to
wlesavo: feels bad, but seems necessary :slight_frown:
eulerscheZahl: but i think i'll replace it when i put it up for approval
eulerscheZahl: should i wait for illedan or just do it now? :thinking:
eulerscheZahl: i've tested enough myself. seems to work as expected, no crashing
eulerscheZahl: a little slow with 12k frame replays (well, 300 frames but 12k moves)
eulerscheZahl: but i don't think there's anything i can do to reduce load time
eulerscheZahl: already only using very few entities
eulerscheZahl: less than 100 in total
darkhorse64: wlesavo: I have done your optim last week. It turned out to be a C++ programming optim not an algorithm optim at least for me. I went the brute force way: filtering all possible cases
darkhorse64: I had to go to a suboptimal solution for length 9
eulerscheZahl: yolo, feel free to approve (or refuse)
wlesavo: darkhorse64 yeah, thats an obvious way to go, but there should be some tricks in choosing guesses to reduce entropy
eulerscheZahl: just guessing a valid number each time gives me a score around 320
eulerscheZahl: i test some numbers and count the number of remaining candidates based on possible answers
darkhorse64: Actually, I have only issues with the first guess. 3M+ possibilities to filter
eulerscheZahl: that's why I converted from C# to C++
eulerscheZahl: and i do some pre-filtering
eulerscheZahl: you can group the numbers by bulls and cows already if you know before what you will guess
eulerscheZahl: and then it's just an array lookup in the first turn, no real filtering
darkhorse64: Brute is OK for lengths 1-7 and 10, 8 needs a small trick only 9 remains
eulerscheZahl: i bruteforce everything
eulerscheZahl: yeah, you said that to me in private message already
wlesavo: i managed to get 6 in python, still want to make a c++ solution. now i just have a greedy algo i.e. make a guess and keep a better bulls
darkhorse64: For guess, I select a random number. My best is 317
wlesavo: i think not random selection is how dbdr got the edge, but im just guessing here :slight_smile:
darkhorse64: Yeah, there must be a way to select a candidate which will bring more information. Or spam submit
eulerscheZahl: that's probably the only thing you can improve once you optimized for speed hard enough
eulerscheZahl: dbdr had a few submits below 300
eulerscheZahl: my spamming got me 304. so there must be something he's doing significantly better
darkhorse64: Should not you consider that "2048" is at 100% only when the 2048 is present ?
darkhorse64: *2048 tile*
darkhorse64: Anyone submit the default code will get 100%
eulerscheZahl: hm, on the one hand you have a valid point here
dbdr: is 2048 vanilla?
eulerscheZahl: on the other hand that's a lot of 0 points at the bottom then
dbdr: isn't there a problem about plenty of existing solvers?
eulerscheZahl: sadly no vanilla, CG limitations :(
eulerscheZahl: the spawning is known to your bot, not random
dbdr: ok, I suppose that changes the game quite a lot
eulerscheZahl: it does
eulerscheZahl: and necessary so you can print several moves in a single turn
eulerscheZahl: 600 frame limit...
dbdr: is the spawning hardcoded or random per game?
eulerscheZahl: and you won't be able to hardcode everything. 30 validators * a lot of turns
eulerscheZahl: random per game, RNG is on github
dbdr: iow, is there going to be spam submit or offline search?
eulerscheZahl: a fairly simple one but produces > 6 million numbers before repeating
dbdr: so spam submit?
eulerscheZahl: offline search. but you can't hardcode every move because of code size limitations
eulerscheZahl: validators are always the same
dbdr: ah, seed is fixed too?
eulerscheZahl: there's 1 random testcase. but submit seeds are fixed
dbdr: hm, is there that much move data that it does not fit in 100K?
eulerscheZahl: i get 12k actions in a single testcase
eulerscheZahl: and that's far from perfect
eulerscheZahl: * 30 validators
dbdr: at 2 bits per action...
eulerscheZahl: sure, only 2 bit per move so you can compress
eulerscheZahl: still a lot
darkhorse64: It's quite the same with a*c or ns
dbdr: 12000*2/8*30 90000
darkhorse64: If you do not consider it as a problem, I can validate
eulerscheZahl: but that 12k is still pretty bad i think
eulerscheZahl: https://prnt.sc/uu4z0a far from optimal
eulerscheZahl: Shadowtick when i told you to go to #world, i meant you should repeat your whole question there. no one else knows what you asked me in private
eulerscheZahl: Scartiloffista which puzzle and language?
eulerscheZahl: known bug, it reads 1 char too less
eulerscheZahl: char map_row[w + 2];
fgets(map_row, w + 2, stdin);
eulerscheZahl: that should work, didn't test
Scarfield: Msmits, you here? :)
jacek: *ahem*... 3 3 is best opening for yavalath with pie rule
jacek: is this RNG? seed = seed * seed % 50515093L
eulerscheZahl: RNG enough
eulerscheZahl: the sequence repeats after more than 6 million different numbers
dbdr: Really Not Good?
eulerscheZahl: i took that RNG from project euler
eulerscheZahl: and obviously the L suffix isn't needed
eulerscheZahl: i also executed it with different initial seeds to detect the largest cycles
wlesavo: lol, thats a nice approach
eulerscheZahl: the lazy way to generate testcases. i always do that
eulerscheZahl: for space maze i let it running for a few hours to generate enough :D
eulerscheZahl: some were too easy, others to hard (or maybe impossible)
eulerscheZahl: i randomly placed items and then tried to solve
Westicles: Isn't there some trick the NN guys came up with to store big data files, you could use for 2048 offline?
MadKnight: why would u try to make a NN for 2048 ?
MadKnight: it's almost the least interesting task possible for that
Westicles: Not the NN, the big data file
Westicles: They were saying thousands of moves times 30 validators is huge
MadKnight: no they just coded floats into 4-byte strings
jacek: there are N-tuples for 2048
Westicles: Oh I see. I thought this meant they stored more than 100k
eulerscheZahl: you can go beyond 100k bytes with unicode
eulerscheZahl: as the limit is 100k chars
jacek: there are some tricks for compressing binary and sending just the binary
eulerscheZahl: i predict that top players will end up hardcoding certain turns and computing the rest
jacek: opening books eh
eulerscheZahl: hardcode where the heuristic fails. more like a middle book
Illedan: Should be easy to hardcode 2048
eulerscheZahl: how so?
Illedan: Just use functions like done in Bender 4..
Illedan: Should be a bunch of repeated patterns :P
eulerscheZahl: but the "function name" will be longer, the more functions you define
eulerscheZahl: i don't think you can win much, might be wrong
eulerscheZahl: if you win something, a simple gzip should do the trick
eulerscheZahl: and there are always 2 buttons if you disagree: downvote and refuse ;)
eulerscheZahl: you have to make some compromises and deviate from best practices on codingame
Guven: this is great stream we are solving together : https://www.twitch.tv/sonergonul
jacek: so spammy
Westicles: What if you edited the non-validator tests to store your data, ran it, then set them back
Westicles: You have access to those files
Westicles: Looks like not on optims though
eulerscheZahl: not sure if i get your question
Westicles: Regular puzzles have those in1.txt type files, you could store data there
eulerscheZahl: edit it = modify the contribution?
Westicles: I guess that would be frowned upon
eulerscheZahl: as in: make an incorrect solution get 100% by temporarily disabling the testcases?
eulerscheZahl: that would work
Westicles: Hah, okay never mind :)
Shadowtick: can someone help me with my code on the tower dereference?
Majeck: defense or dereference?
Shadowtick: Tower Dereference
Shadowtick: I spelled it correctly because I am looking at the name of it
jacek: tower *reference
Majeck: Automaton2000 can probably help
Automaton2000: i need a better way to know the time it takes for me to see a list of numbers
eulerscheZahl: Illedan you're giving me headache
eulerscheZahl: upload breaks the formatting once again
eulerscheZahl: there is no
Shadowtick: who knows a easy puzzle that has to do with loops eulerscheZahl: the descent Illedan: haha :D eulerscheZahl: i'll raise my concerns on discord Shadowtick: I already did the descent Westicles: Ghost Legs eulerscheZahl: or outside of codingame: https://projecteuler.net/problem=1 Enknable: Just go to the easy puzzles and ctrl-F "Loops" eulerscheZahl: use the tags eulerscheZahl: https://www.codingame.com/learn/loops Enknable: how'd u get there eulerscheZahl? eulerscheZahl: i clicked the loops at the descent puzzle Enknable: oh eulerscheZahl: :D Enknable: ezpz jacek: or :soccer: jacek: i used many loops there eulerscheZahl: emphasis on "easy" eulerscheZahl: now that I updated the statement, i get this random seed: https://prnt.sc/uua531 eulerscheZahl: Illedan i blame you eulerscheZahl: but exactly the same score on submit eulerscheZahl: is random still random? :thinking: eulerscheZahl: yes, it is eulerscheZahl: seems to be a visual issue only Illedan: haha eulerscheZahl: and i start to see some layout problems too https://prnt.sc/uua6y6 AntiSquid: auto-adjust font ! PatrickMcGinnisII: I'm trying CoC, browser is taking minutes to load a clash, my pc isn't maxed out. major errors going on Shadowtick: bye everyone eulerscheZahl: that's a sign to play the puzzle of the week instead eulerscheZahl: or 2048, just got approved eulerscheZahl: oh, i forgot to set an image PatrickMcGinnisII: alot games just truncate the numbers like 16384 to 16k, 32k ,etc. eulerscheZahl: i made the font smaller now Illedan: eulerscheZahl, forgot to mention. Add a screenshot as the game image PatrickMcGinnisII: bit runner 2048? eulerscheZahl: i will eulerscheZahl: a screenshot of the leaderboard :rofl: Illedan: :D Allis: Savage. PatrickMcGinnisII: 2048 scores? PatrickMcGinnisII: optimization? PatrickMcGinnisII: mjst be optimization eulerscheZahl: optim eulerscheZahl: https://www.codingame.com/multiplayer/optimization/2048 AntiSquid: report it! it has no cover image AutomatonNN AntiSquid: Automaton2000 ? Automaton2000: i need to think about it AntiSquid: what happened to the other one? eulerscheZahl: banned for pinging euler eulerscheZahl: hm, that NN isn't even online. strange eulerscheZahl: but won't miss it AntiSquid: arch nemesis :o PatrickMcGinnisII: what is the probability of a 2 versus a 4? eulerscheZahl: 50-50 eulerscheZahl: assuming that the random generator is good enough eulerscheZahl: and it's another language award farming puzzle :) AntiSquid: i am done with my epic submit for the new game PatrickMcGinnisII: java, should be ok eulerscheZahl: achievement unlocked: D lover MaliciouslyCrypticUsername: ? AntiSquid: long ago AntiSquid: D wasn't that bad since it's close to human coding language eulerscheZahl: submit still shows "random seed" instead of the correct validator names eulerscheZahl: :/ eulerscheZahl: but seems to play the right ones at least jacek: 50-50? i thought it was 90-10 jacek: for original 2048 AntiSquid: oh this is an easy way for +1 for the languages i didn't get to 30 yet PatrickMcGinnisII: oh you are using a pseudo randome and grabbing a single bit PatrickMcGinnisII: math.random would probably do a better job MaliciouslyCrypticUsername: math.random? AntiSquid: clojure fail eh? MaliciouslyCrypticUsername: Oh js MaliciouslyCrypticUsername: Ewww Westicles: Don't get me started on language farming AntiSquid: why? it's good ... i need to get my 30 each AntiSquid: i don't know why but i need to Westicles: I'm over 200 each AntiSquid: for real? Westicles: ugh AntiSquid: wow . jacek: french too? AntiSquid: do you have a tool to translate your puzzles ? Westicles: yes AntiSquid: like what jacek: translate.google.com jacek: duh AntiSquid: not even Automaton2000 finds that funny Automaton2000: as long as there are no more moves PatrickMcGinnisII: using high modus number as prime and seeding it with a co-prime on init() and looping it date,getTime()%1000 number of times would make it less predictable and it would have a longer period PatrickMcGinnisII: or seed math.random w/ date.getTime Westicles: He wants it to be predictable so you know whats coming eulerscheZahl: Westicles with 230 puzzles per language, wtf?! PatrickMcGinnisII: oic, well grabbing bit 5 makes the long unnecessary eulerscheZahl: and i thought marchete was crazy DomiKo: wait what DomiKo: 230 ?!?!? eulerscheZahl: https://www.codingame.com/profile/613b8dd7e3f3f21da489c27a933e15d67334533 DomiKo: I see DomiKo: that's insane eulerscheZahl: and in C++ he has done more than me in C# jacek: his CV is impressive. hired already. not make another cat website Westicles: It is your faults with that python script eulerscheZahl: :D DomiKo: which script? eulerscheZahl: some system calls involved? Westicles: yes eulerscheZahl: the number shifting script helped to auto-submit eulerscheZahl: stilgart with 447 solved puzzles in haskell :o eulerscheZahl: that must be close to everything PatrickMcGinnisII: so guessing where number is gonna spawn on board wouldn't give you an idea of whether it was gonna be a 2 or 4 because bit 5 is always >15 eulerscheZahl: the code is public. including the spawn logic PatrickMcGinnisII: so there's no relationship there eulerscheZahl: and you are given the random seed used PatrickMcGinnisII: oh really? where is that? eulerscheZahl: did you read the statement? eulerscheZahl: a valuable clue for DomiKo as well ;) DomiKo: yes yes DomiKo: statement could be really helpful sometimes PatrickMcGinnisII: looking at referee.java looks like random.nextint PatrickMcGinnisII: oh there is a parse eulerscheZahl: that's exactly what it's not eulerscheZahl: https://github.com/eulerscheZahl/2048/blob/master/src/main/java/engine/Board.java#L30-L45 eulerscheZahl: damn, line numbers changed after i linked it in the statement :/ eulerscheZahl: i thought i was clever enough placing it at the top of the class eulerscheZahl: then i added a getScore() function above eulerscheZahl: (╯°□°）╯︵ ┻━┻ eulerscheZahl: i'll refactor that, faster than reuploading the statement on CG AntiSquid: ╯°Д°)╯︵/(.□ . \)︵ ┻━┻ PatrickMcGinnisII: so like 290797 is the seed of test2? eulerscheZahl: kind of eulerscheZahl: starts as 290797 eulerscheZahl: then generates 2 spawns from that eulerscheZahl: before you have the first interaction with it eulerscheZahl: damn you clojure eulerscheZahl: even a while loop without reading anything times out PatrickMcGinnisII: oh crap, you give it all away in the actual game PatrickMcGinnisII: i was looking at sourcecode json files PatrickMcGinnisII: smh eulerscheZahl: the only way to get beyond 600 turns eulerscheZahl: allow the user to print multiple actions at once eulerscheZahl: but then the user has to know how spawns work PatrickMcGinnisII: array arrangement looks pretty normal Shadowtick: hey I am back now jacek: good for you Shadowtick: I didn't wanna get back on but I had to because I wanna finish the algorithms jacek: algorithm addict? Shadowtick: no Shadowtick: just trying to finish MadKnight: he's talking about the quest map, jacek jacek: quests addict? Majeck: Booyah! Just got a 3300 character program to exactly 200 for code golf Majeck: Also does this link not open for anybody else: https://www.codingame.com/blog/code-golf-python/ Majeck: ? Majeck: I wanted to read it but past the first paragraph it never loads and I tried it on like 4 different devices Shadowtick: it opened for me Majeck: Weird, I mean it did open for me too what I meant was if anyone can read the whole blog Shadowtick: ok logiqub: I can't open it Majeck: https://ibb.co/RHV1cM6 Majeck: That's how it looks on my device right now logiqub: Thx for the picture :smile: PatrickMcGinnisII: ok eulerscheZahl, all my predictions work and board manipulations work, but no search, just output random 600 moves at a time for score of 28k, smh, lol AntiSquid: i can share my code for inspiration PatrickMcGinnisII PatrickMcGinnisII: in D? lol AntiSquid: best time to learn D isn't it? AntiSquid: does pastebin work? PatrickMcGinnisII: i suppose AntiSquid: http://chat.codingame.com/pastebin/850d791b-307d-48ab-b55b-542704a23f26 PatrickMcGinnisII: inva;lid paste id AntiSquid: https://pastebin.com/34DV9qvX PatrickMcGinnisII: ULR, lol PatrickMcGinnisII: guess i shoulda just randomize 3 directions instead of 4 PatrickMcGinnisII: now I see why its a beam search simooooon: hello simooooon: world MaliciouslyCrypticUsername: "Import std" AntiSquid PatrickMcGinnisII: i stored board flat simooooon: fck AntiSquid: ? MaliciouslyCrypticUsername ? simooooon: hohp MaliciouslyCrypticUsername: The url MaliciouslyCrypticUsername: .-. PatrickMcGinnisII: hmmm, now to make it jump thru hoops, maybe I'll get a good eval for a depth of 5 w/ full search, with some cutoffs maybe I'll get to 7. Hmm, i better read up on beam search PatrickMcGinnisII: 600 no fraking way MaliciouslyCrypticUsername: ??? PatrickMcGinnisII: https://www.codingame.com/ide/puzzle/2048 MaliciouslyCrypticUsername: Ohhh LegendaryStone: AdrianoIanase do you mind sharing your code please? LegendaryStone: I'm relatively new, and I want to see a better way you solved the problem AdrianoIanase: oh AdrianoIanase: ok LegendaryStone: Thanks :) AdrianoIanase: it's not that elegant, but it's fastest mode ;) Lisker_the_slow: I am back biys Shadowtick: ... Lisker_the_slow: I am back girls Shadowtick: why Shadowtick: whyyyyyyy did you say it like that Shadowtick: hey if anyone needs me ping me Lisker_the_slow: no one needs you Lisker_the_slow: no one will ever need you man UnPlugThaMatrix: lmao Zenro: hi Harrogin: Anyone in Legends of Code & Magic? MadKnight: i am Harrogin: Oh dang rank 61 I bet lol Harrogin: Would a neural network be viable in this game? Harrogin: Or is it just straight up manual game logic? MadKnight: it's actually complicated IKEJIME: java array Jef808: Hmmm I got followed by a Clash of Code bot tonight isn't that a little over the top? :/ professional_dumbass: : / bisnaisu: np