00:23:42 [[Marble Machine]] https://esolangs.org/w/index.php?diff=105583&oldid=105535 * Masalt * (+6) /* Factorial */ 00:31:00 -!- FreeFull has quit (Ping timeout: 255 seconds). 00:32:36 -!- FreeFull has joined. 00:54:51 -!- b_jonas has quit (Ping timeout: 265 seconds). 01:38:59 -!- FreeFull has quit. 03:01:55 -!- razetime has joined. 04:34:19 fizzie: The thing I realized for day 16 is that gur gjb ntragf npg vaqrcraqragyl (trarengvat frcnengr sybjf), nf ybat nf gurl arire bcra gur fnzr inyir, naq gung vf fbzrguvat bar pna rafher nsgre rahzrengvat gur orfg svany fgngrf sbe n fvatyr ntrag. Naq sbe n fvatyr ntrag, gur ahzore bs fgngrf qbrf abg rkcybqr arneyl nf zhpu (nf jr xabj sebz cneg 1). 04:40:44 [[Feta]] https://esolangs.org/w/index.php?diff=105584&oldid=83241 * Masalt * (+196) 05:30:31 -!- slavfox has quit (Quit: ZNC 1.8.2 - https://znc.in). 05:33:34 -!- slavfox has joined. 06:19:19 -!- Lord_of_Life has quit (Ping timeout: 260 seconds). 06:19:36 -!- Lord_of_Life has joined. 06:46:26 -!- tromp has joined. 06:57:58 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…). 07:23:39 -!- tromp has joined. 07:25:36 -!- bgs has joined. 07:29:20 -!- Sgeo has quit (Read error: Connection reset by peer). 07:32:13 -!- bgs has quit (Remote host closed the connection). 08:31:19 Ah, pointers are so much fun. (I managed to get today's part 2 down to 30ms. Not in Rust, in C++, because of excessive use of (raw) pointers.) 09:24:03 fizzie: I found a few additional pruning opportunities for day 19, now it's 14ms for part 2 (sample and input). But yeah, nothing nice. Also everything I have is hard-coded for the particular dependency graph in that problem. 09:28:05 I ended up with ~350ms for day 19 altogether. 09:30:27 -!- monoxane has joined. 09:34:14 -!- chiselfuse has quit (Ping timeout: 255 seconds). 09:35:12 -!- chiselfuse has joined. 09:38:20 As for day 16, I did notice gung vs lbh xarj va nqinapr juvpu fhofrg bs inyirf ner tbvat gb or bcrarq ol bar ntrag, lbh pbhyq eha cneg 1 hazbqvsvrq (sbe gung fhofrg bs inyirf), naq gura ntnva va gur pbzcyrzrag, naq nqq gur gjb ahzoref. Ohg gurer frrzrq gb or fb znal qvssrerag cnegvgvbavatf, gung qvqa'g vzzrqvngryl uryc. 09:41:00 fizzie: Lrnu vg bayl cnlf bss orpnhfr lbh pna erhfr gur shyy frnepu erfhygf sbe gur frpbaq ntrag, vs lbh erzrzore gur frg bs bcrarq inyirf. 09:41:30 (With some caveats concerning pruning... I have no pruning anymore.) 10:24:42 -!- Lord_of_Life_ has joined. 10:24:42 -!- Lord_of_Life has quit (Ping timeout: 265 seconds). 10:25:58 -!- Lord_of_Life_ has changed nick to Lord_of_Life. 10:56:52 -!- __monty__ has joined. 11:16:50 -!- chiselfuse has quit (Ping timeout: 255 seconds). 11:18:56 -!- chiselfuse has joined. 12:17:54 For day 20 I got 170 ms total in Go from the fgenvtug-sbejneq qbhoyl yvaxrq yvfg ba gbc bs na neenl bs abqrf, naq vgrengvat gb gur orggre qverpgvba. All those pointer safety checks, I guess. Unless there's something better. 12:18:21 Also reminded me of https://adventofcode.com/2020/day/23 a bit. 12:21:39 -!- Thelie has joined. 12:24:09 (I do wonder if you could use a fxvc yvfg fbeg bs n guvat though.) 12:30:10 -!- SGautam has joined. 12:39:53 V hfrq n ovanel gerr jvgu svkrq abqrf sbe gur yrnsf naq hc-yvaxf. N zrff... 12:40:17 (but (ohg vg nibvqf gur yvarne fpna) 12:41:33 Also that was the post-mortem; I did something way more naive for the first solution. The usual trade-off between writing code fast and writing fast code... 12:42:46 V qvq abg gel gb onynapr gur gerr gubhtu, rkprcg qhevat vavgvnyvmngvba; gur vachgf frrzrq enaqbz rabhtu. 12:44:42 I wonder whether your idea is simpler, hmm. 12:46:42 My input is exactly 5000 items; I was thinking V'q whfg nqq na nqqvgvbany ceri/arkg cbvagre gb rirel gubhfnaqgu abqr, hfr gubfr va gur yvarne fpna, naq gura svkhc gur nssrpgrq barf. 12:47:19 I don't think it's going to end up pretty, implementation-wise. And, well, will have to save that to post-workday. 12:48:13 That doesn't sound so bad actually. 12:49:06 I guess you could also vafgrnq bs gelvat gb xrrc gur fxvc cbvagref rdhnyyl fcnprq, whfg erpbeq gur qvfgnapr gurl fxvc naq svk gubfr hc, zvtug or fvzcyre gb vzcyrzrag. 12:49:17 (Don't think of it as a skip-list; rather, think of it as a fixed-size uniform index into the doubly linked list. I'd s/thousand/hundred/.) 12:49:20 argh 12:49:30 I meant to rot13 that 12:50:34 fizzie: I think the first idea is a tad simpler, as long as you don't mind having sqrt(n) instead of log(n) asymptotically. 12:50:43 (expected) 12:54:46 -!- Lord_of_Life has quit (Ping timeout: 272 seconds). 13:32:36 -!- razetime has quit (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.). 13:47:10 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…). 13:48:05 -!- tromp has joined. 14:02:12 -!- Thelie has quit (Remote host closed the connection). 14:07:51 -!- masterbuilder has joined. 14:14:55 -!- fel has joined. 14:39:25 -!- SGautam has quit (Quit: Connection closed for inactivity). 15:01:49 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…). 15:02:25 -!- Sgeo has joined. 15:15:10 -!- tromp has joined. 15:17:46 -!- bgs has joined. 15:22:02 -!- Thelie has joined. 15:26:35 int-e: Couldn't leave it alone, and it does seem to work; with a spacing of 50 (a little better than 100; a lot better than 1000) the Go code takes 14 ms. Had quite a bit of trouble getting the edge cases where the item being moved is part of the index either before or after the move (or both) correct. 15:26:59 cool 15:27:12 > sqrt 5000 15:27:14 70.71067811865476 15:27:53 yeah, 100 makes sense if you pick the closer... fencepost, I guess 15:28:06 `factor 5000 15:28:07 5000: 2 2 2 5 5 5 5 15:28:14 hmm 15:29:05 Oh wait that would suggest 50, but maintaining the lower part is more expensive per item. Yeah, 100 makes sense. 15:30:17 I'm not thinking straight. 15:31:30 Should've been "Oh wait that would suggest 100, but maintaining the lower part is more expensive per item. Yeah, 50 makes sense." 15:35:09 fizzie: I have separate delete and insert operations, which reduces the risk of messing up the edge cases. In your context that would probably be a bit more expensive though. 15:35:50 But at least today we had an interesting underlying data structure problem. :) 15:36:45 -!- Thelie has quit (Remote host closed the connection). 15:42:09 Numbers just for completeness: https://0x0.st/o5mv.txt 15:43:17 neat 16:01:12 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…). 16:09:36 -!- tromp has joined. 16:50:24 -!- immibis_ has quit (Remote host closed the connection). 16:50:48 -!- immibis_ has joined. 17:27:08 [[Shut up]] N https://esolangs.org/w/index.php?oldid=105585 * Masalt * (+103) Created page with "{{lowercase}}{{stub}} {{WIP}} '''shut up''' is a joke [[brainfuck]] derivative made by [[User:masalt]]." 17:58:52 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…). 18:01:03 -!- Lord_of_Life has joined. 18:07:59 OCaml 5 released. Is its effect handlers a good excuse to learn OCaml? 18:09:42 ...I'd have to learn OCaml itself to get to the fun stuff 18:12:50 -!- tromp has joined. 18:16:07 -!- FreeFull has joined. 18:16:49 -!- chiselfuse has quit (Remote host closed the connection). 18:18:45 -!- chiselfuse has joined. 18:28:43 [[Shut up]] https://esolangs.org/w/index.php?diff=105586&oldid=105585 * Masalt * (+657) 18:34:17 [[Shut up]] https://esolangs.org/w/index.php?diff=105587&oldid=105586 * Masalt * (-4) 19:53:47 If I want to make up a new escape code in a terminal emulator to switch the code page to a specified code page number, what code should be used? 19:55:51 Is there an escape code to switch into or out of doorway mode? If not, what code should be used? 20:00:01 There is a switch for doorway mode, which is CSI=255h 20:02:13 (In doorway mode, a null prefix can be used to treat the next character as a graphic character even if it would ordinarily be a control character, which is necessary for some code pages.) 20:38:53 -!- chiselfuse has quit (Ping timeout: 255 seconds). 20:40:47 -!- chiselfuse has joined. 21:15:00 -!- b_jonas has joined. 21:29:33 -!- bgs has quit (Remote host closed the connection). 21:43:54 [[EsoFur]] M https://esolangs.org/w/index.php?diff=105588&oldid=105398 * TaserTheFox * (-8) 21:49:07 [[Quudo]] https://esolangs.org/w/index.php?diff=105589&oldid=105582 * SwitchU42 * (+63) 22:23:46 -!- __monty__ has quit (Quit: leaving). 22:41:27 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…). 23:48:18 [[Flame]] M https://esolangs.org/w/index.php?diff=105590&oldid=80601 * PythonshellDebugwindow * (+96) Stub, categories, unpipe