about summary refs log tree commit diff
path: root/users/sterni/exercises/aoc/2022 (follow)
AgeCommit message (Collapse)AuthorFilesLines
2023-01-22 r/5731 feat(sterni/aoc/2022): day16 part 1 k solutionsterni1-0/+21
Change-Id: I4d141e0d911157ae17f12066b859297836d4858b Reviewed-on: https://cl.tvl.fyi/c/depot/+/7897 Autosubmit: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org>
2022-12-28 r/5522 fix(sterni/aoc/2022): make solutions executable in bqn drvsterni1-7/+9
BQNLIBS dependency also needs to be provided in the derivation running all solutions. Change-Id: I704369127ab92a52c7e4b21de8b7982fb8328f9d Reviewed-on: https://cl.tvl.fyi/c/depot/+/7662 Reviewed-by: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI Autosubmit: sterni <sternenseemann@systemli.org>
2022-12-28 r/5521 chore(sterni/aoc/2022): nuke Nix solutionssterni3-56/+2
Didn't end up happening due to a lack of motivation. Will try to finish the BQN AoC still, though. Change-Id: Ib296aec9f3cfeef57c79a9ba09fc664c1a19dcff Reviewed-on: https://cl.tvl.fyi/c/depot/+/7661 Autosubmit: sterni <sternenseemann@systemli.org> Reviewed-by: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI
2022-12-27 r/5502 feat(sterni/aoc/2022): day25 array solutionssterni2-0/+5
Another approach for figuring out the SNAFU digits in k: https://github.com/leahneukirchen/adventofcode2022/blob/master/day25.k Change-Id: Iddf424aff8fcac176109fd35ef44bdd875302adc Reviewed-on: https://cl.tvl.fyi/c/depot/+/7647 Autosubmit: sterni <sternenseemann@systemli.org> Reviewed-by: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI
2022-12-23 r/5480 feat(sterni/aoc/2022): day21.1 BQN solutionsterni1-0/+25
This one is not finished yet, but needs to move of this laptop by ways of git. Change-Id: I2c8c0a7b581a654f7cfab92dd21ced82a14c5f42 Reviewed-on: https://cl.tvl.fyi/c/depot/+/7616 Tested-by: BuildkiteCI Autosubmit: sterni <sternenseemann@systemli.org> Reviewed-by: sterni <sternenseemann@systemli.org>
2022-12-20 r/5436 feat(sterni/aoc/2022): day17 BQN solutionsterni1-0/+51
Change-Id: I1e2dd583c5f782afb679beeb43ceffa0cbc5c59e Reviewed-on: https://cl.tvl.fyi/c/depot/+/7607 Reviewed-by: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI Autosubmit: sterni <sternenseemann@systemli.org>
2022-12-20 r/5432 feat(sterni/aoc/2022): day15 BQN solutionsterni1-0/+18
Part 2 is pretty slow, since we just reuse our fast solution for part 1. This means we have to check 4000000 which could be reduced a bit by using a loop. It is tolerably slow, so whatever. (Overall this problem would have been more fun if the space to check was smaller.) Change-Id: I1203330fe0364894cfe0318376e583868937b5bd Reviewed-on: https://cl.tvl.fyi/c/depot/+/7603 Reviewed-by: sterni <sternenseemann@systemli.org> Autosubmit: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI
2022-12-20 r/5431 feat(sterni/aoc/2022): day20 BQN solutionsterni1-0/+13
This solution feels very un-BQN-esque, but I could not get it to work by doing arithmetic operations on an array of indices for any input but the example one. It's still decently fact considering that we create so many intermediate arrays at each step. Change-Id: I883409b4d99d4954312df9b9a9ffc568c39f7726 Reviewed-on: https://cl.tvl.fyi/c/depot/+/7602 Reviewed-by: sterni <sternenseemann@systemli.org> Autosubmit: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI
2022-12-20 r/5430 feat(sterni/aoc/2022): day18 BQN solutionsterni1-0/+14
Change-Id: I1504cd5e443ff0b28c2d97ae357e5d92c88bba4d Reviewed-on: https://cl.tvl.fyi/c/depot/+/7601 Reviewed-by: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI Autosubmit: sterni <sternenseemann@systemli.org>
2022-12-20 r/5429 feat(sterni/aoc/2022): day12 BQN solutionsterni1-0/+16
Change-Id: Ib80fe824341964f46a45599c18fa00635ba02aaf Reviewed-on: https://cl.tvl.fyi/c/depot/+/7600 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org> Autosubmit: sterni <sternenseemann@systemli.org>
2022-12-13 r/5416 feat(sterni/aoc/2022): day13 BQN solutionsterni2-2/+16
Change-Id: I401ba09198d447628fa76d811fd4fe780baa8240 Reviewed-on: https://cl.tvl.fyi/c/depot/+/7586 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org> Autosubmit: sterni <sternenseemann@systemli.org>
2022-12-12 r/5415 refactor(sterni/aoc/2022/10): tidy up image renderingsterni1-1/+1
Change-Id: I374373e86e78277cf2caf8509c477a508a2ceba1 Reviewed-on: https://cl.tvl.fyi/c/depot/+/7584 Autosubmit: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org>
2022-12-12 r/5414 feat(sterni/aoc/2022): day11 BQN solutionsterni2-0/+48
Change-Id: If9c510e3530ecc1acafa1d708eacf64eb1132db7 Reviewed-on: https://cl.tvl.fyi/c/depot/+/7583 Reviewed-by: sterni <sternenseemann@systemli.org> Autosubmit: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI
2022-12-10 r/5404 refactor(sterni/aoc/2022/05): rank 2 array into list of lists w/ <˘sterni1-1/+1
Change-Id: Ic536908bad5bb4af860ec53bd585ed74af3117af Reviewed-on: https://cl.tvl.fyi/c/depot/+/7557 Tested-by: BuildkiteCI Autosubmit: sterni <sternenseemann@systemli.org> Reviewed-by: sterni <sternenseemann@systemli.org>
2022-12-10 r/5403 feat(sterni/aoc/2022): day10 BQN solutionsterni1-0/+25
I cheated a bit to skip implementing multi cycle instructions. The VM is pretty much a normal tail recursive function, but working with scalars in BQN is on brand-ish. Array programming helps again when drawing the picture on screen. Change-Id: I2562c862e228f633c5fad09e503529c6e0785112 Reviewed-on: https://cl.tvl.fyi/c/depot/+/7556 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org> Autosubmit: sterni <sternenseemann@systemli.org>
2022-12-10 r/5402 feat(sterni/aoc/2022): day09 BQN solutionsterni1-0/+17
Change-Id: Idad006eaacbd89827feb5bbd9d6e04605743fca2 Reviewed-on: https://cl.tvl.fyi/c/depot/+/7555 Autosubmit: sterni <sternenseemann@systemli.org> Reviewed-by: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI
2022-12-10 r/5400 feat(sterni/aoc/2022): day08 BQN solutionsterni1-0/+15
Added utility used to be related, but got dropped in a refactor. Change-Id: I1f88973d6b42f1302b49cd61c53e4cd1e15b8c6f Reviewed-on: https://cl.tvl.fyi/c/depot/+/7553 Autosubmit: sterni <sternenseemann@systemli.org> Reviewed-by: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI
2022-12-07 r/5398 feat(sterni/aoc/2022): day07 BQN solutionsterni1-0/+24
Did not have the motivation to go back and improve things, so this is my initial attempt. Change-Id: I3e129523d8f6c03bfbe50351f78d56ec7254a2dc Reviewed-on: https://cl.tvl.fyi/c/depot/+/7539 Reviewed-by: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI Autosubmit: sterni <sternenseemann@systemli.org>
2022-12-06 r/5395 refactor(sterni/aoc/2022/05): improve parsing a bitsterni1-2/+1
By taking advantage of filling (ironically) we can avoid creating a spec in an ugly way. Additionally we transpose before parsing which doesn't really make all that much of a difference, though. Change-Id: Ida593138654f8367d666447f2b62013e8ddff01e Reviewed-on: https://cl.tvl.fyi/c/depot/+/7535 Reviewed-by: sterni <sternenseemann@systemli.org> Autosubmit: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI
2022-12-06 r/5394 feat(sterni/aoc/2022): day06 array solutionssterni2-0/+5
Today's problem works very nicely thanks to window although the indexing sadly is off by a constant amount from what we immediately get. I have a feeling someone is going to demolish my 31 char k solution. Change-Id: Ia90786ce2fe321235286a85c466decf7feb669ed Reviewed-on: https://cl.tvl.fyi/c/depot/+/7534 Reviewed-by: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI Autosubmit: sterni <sternenseemann@systemli.org>
2022-12-05 r/5393 refactor(sterni/aoc/2022/05): improve _ApplyCmdsterni1-4/+3
* take advantage of block header for destructuring * instead of ModestTake we can split the stack we are picking from into what we need to move and what to keep, saving us from having to repeat ourselves. * remove some unnecessary parens Change-Id: I1b81a93a27d14dcbb6bdd109e862a356f611aca9 Reviewed-on: https://cl.tvl.fyi/c/depot/+/7530 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org> Autosubmit: sterni <sternenseemann@systemli.org>
2022-12-05 r/5392 feat(sterni/aoc/2022): day05 BQN solutionsterni1-0/+20
First input that is genuinely fun to parse in BQN. There surely is a nice trick for _ApplyCmd, but this works and I'm unable to think today. Change-Id: Iefccc81f1c1db03f45e31aaf7a1703ac0f91306f Reviewed-on: https://cl.tvl.fyi/c/depot/+/7529 Autosubmit: sterni <sternenseemann@systemli.org> Reviewed-by: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI
2022-12-05 r/5391 feat(sterni/aoc/2022): day04 BQN solutionsterni1-0/+11
Very tired today, but seems like a decently tidy solution. Change-Id: Id3055159ae99e9b91fcc4b9b41ec7fe5e9a1bc6a Reviewed-on: https://cl.tvl.fyi/c/depot/+/7528 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org> Autosubmit: sterni <sternenseemann@systemli.org>
2022-12-05 r/5388 fix(sterni/aoc/2022/01): fix output formatsterni1-2/+2
Change-Id: I7e2e82faa70ded683765627ba35e6f237976363f Reviewed-on: https://cl.tvl.fyi/c/depot/+/7526 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org>
2022-12-05 r/5387 feat(sterni/aoc/2022): day03 k solutionsterni1-0/+1
Change-Id: If31e7047fc0c286e3e40b23a13fb9c51297809af Reviewed-on: https://cl.tvl.fyi/c/depot/+/7525 Reviewed-by: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI
2022-12-03 r/5381 feat(sterni/aoc/2022): day03 solutionsterni1-0/+8
Change-Id: I0f23d4d6405779fe7e804eb8b9f407dc4de88760 Reviewed-on: https://cl.tvl.fyi/c/depot/+/7502 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org> Autosubmit: sterni <sternenseemann@systemli.org>
2022-12-03 r/5378 feat(sterni/aoc/2022): day02 k solutionsterni1-0/+1
Uses the same idea as the BQN solution, but is very concise. Change-Id: I876208e5e86f28240f4a3384d16321fd92d077eb Reviewed-on: https://cl.tvl.fyi/c/depot/+/7499 Autosubmit: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org>
2022-12-02 r/5377 feat(sterni/aoc/2022): day02 solutionsterni1-0/+7
It seems to me that there must be some way to improve this further, but I'm kind of out of time. Change-Id: Icf3510b6c126345551125543aec70155b6eeff4e Reviewed-on: https://cl.tvl.fyi/c/depot/+/7498 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org> Autosubmit: sterni <sternenseemann@systemli.org>
2022-12-02 r/5365 refactor(sterni/aoc/2022): use scan in BQN/ksterni2-5/+4
We can actually use one and the same scan on the sorted list to solve part 1 and 2 of the assignment. Change-Id: I657a81bad6151ef4fe13239db88d2dbd2f9c29d8 Reviewed-on: https://cl.tvl.fyi/c/depot/+/7491 Autosubmit: sterni <sternenseemann@systemli.org> Reviewed-by: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI
2022-12-01 r/5364 feat(sterni/aoc/2022): day01 solutionssterni4-3/+40
Bonus solution in k as I got sniped by leah2. Change-Id: I806f5b2ac1388159a427bb239bfb1bb7aeb329d7 Reviewed-on: https://cl.tvl.fyi/c/depot/+/7490 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org>
2022-12-01 r/5363 feat(sterni/exercises/aoc/2022): add basic scaffoldingsterni4-0/+79
I currently plan doing BQN and Nix (where it is not too annoying, respectively). All solutions can either be executed together in a derivation using CBQN and Tvix (!!!) or executed individually (I'll do one file per solution for BQN and an attribute set of solutions for Nix in a single file). Change-Id: I7cff2ea60d06ae0f586d07779f14f5edd8f87aae Reviewed-on: https://cl.tvl.fyi/c/depot/+/7489 Reviewed-by: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI