Skip to content

Instantly share code, notes, and snippets.

@Stevie-O
Stevie-O / aoc2024day18-so.awk
Created December 19, 2024 16:02
AOC 2024 Day 18 Solver - POSIX awk
# aoc2024day18-so.awk
# ===================
#
# A solver for Advent of Code 2024, Day 18, both parts, implemented in pure POSIX awk
#
# inspired by Ramen (ラーメン)
#
# # Invocation
#
# `awk [-P] -f aoc2024day18-so.awk [part1=<number>] [dim=<number>] [inputfile]`
@Stevie-O
Stevie-O / README.md
Created December 19, 2024 05:54
AOC 2024 Day 17 Solver - Intcode

AOC 2024 Day 17 Intcode solver

USAGE

All input and output is done in ASCII. Attempts to ignore CRs ('\r' aka 0x0D aka 015).

Input must exactly conform to the example and puzzle inputs supplied for Day 17.

Input may be terminated as follows:

@Stevie-O
Stevie-O / aoc-2024-day07b-dfs.linq
Created December 8, 2024 05:50
AOC 2024 Day 7 Part 2 - DFS with pruning
<Query Kind="Program">
<Namespace>System.Collections.Immutable</Namespace>
</Query>
#load "../common/aoc-input-util.linq"
#load "../common/aoc-input-util2.linq"
#load "../common/aoc-parsers.linq"
#load "../common/aoc-exec-util.linq"
const bool EXAMPLE = false;
#load "../common/aoc-input-util.linq"
#load "../common/aoc-parsers.linq"
void Main()
{
using (var tr =
//OpenDataFile()
GetSampleInput()
)
{
@Stevie-O
Stevie-O / day24_via_vectors.m
Created December 31, 2023 20:32
AOC 2024 Day 24 Part 2 via matrix and vector math
% xyz = readcsv('day24.csv');
n1 = 100;
n2 = 200;
n3 = 300;
r1 = xyz(1:3,n1);
r2 = xyz(1:3,n2);
r3 = xyz(1:3,n3);
v1 = xyz(4:6,n1);
@Stevie-O
Stevie-O / aoc-2023-day24-part2-solver.cs
Created December 27, 2023 19:08
aoc 2023 day 24 part 2 solver (does not work)
enum Plane { X = 0, Y = 1, Z = 2 }
struct DimensionTrajectory
{
public DimensionTrajectory(Hailstone h, Plane p)
{
Position = p switch { Plane.X => h.pos.X, Plane.Y => h.pos.Y, Plane.Z => h.pos.Z };
Velocity = p switch { Plane.X => h.vel.Dx, Plane.Y => h.vel.Dy, Plane.Z => h.vel.Dz };
}
public readonly long Position;
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@Stevie-O
Stevie-O / tslater-aoc-2023-day16b.linq
Last active December 17, 2023 19:01
Caching solution for AOC 2023 day 16
#load "C:\Users\Stevie-O\Documents\LINQPad Queries\advent-of-code\common\aoc-input-util.linq"
#load "C:\Users\Stevie-O\Documents\LINQPad Queries\advent-of-code\common\aoc-parsers.linq"
const string EXAMPLE_1 = @"
.|...\....
|.-.\.....
.....|-...
........|.
..........
.........\
@Stevie-O
Stevie-O / aoc-2023-day14-state-compressor.cs
Created December 14, 2023 21:17
aoc-2023-day14-state-compressor
enum RockType { None, Round, Cube }
interface IPlatformState
{
int Width { get; }
int Height { get; }
RockType GetRockAt(int row, int col);
}
@Stevie-O
Stevie-O / aoc-2023-day6-solver.pgm
Created December 8, 2023 00:59
AOC 2023 Day 6 Intcode solver
1101,0,0,3,109,842,21101,822,0,1,21101,832,0,2,21101,21,0,0,1105,1,215,1201,1,0,820,21101,832,0,1,21101,842,0,2,21101,40,0,0,1105,1,215,2008,820,1,45,1106,0,678,21001,822,0,1,21001,832,0,2,21101,62,0,0,1105,1,95,202,1,821,821,101,-1,820,820,101,1,48,48,101,1,52,52,1005,820,47,21001,821,0,1,21101,92,0,0,1105,1,536,104,10,99,109,11,21201,-9,1,-8,22202,-10,-10,-7,22102,-4,-9,-6,22201,-7,-6,1,1207,1,1,118,1105,0,685,21101,127,0,0,1105,1,344,21202,1,-1,-5,22201,-10,-5,1,21101,142,0,0,1105,1,407,21201,1,0,-4,1202,-4,-1,152,21201,-10,0,-3,22202,-4,-3,-2,2207,-2,-8,163,1106,0,172,21201,-4,1,-4,1105,1,146,21201,-3,0,-1,1202,-1,-1,182,21201,-10,0,-3,22202,-1,-3,-2,2207,-2,-8,193,1105,0,202,21201,-1,1,-1,1105,1,176,21202,-4,-1,-10,22201,-1,-10,-10,109,-11,2105,1,0,109,7,21101,0,0,-3,1201,-6,0,293,1101,229,0,304,21101,0,0,-4,21101,0,0,-2,203,-1,1208,-1,10,244,1105,0,269,1207,-1,48,251,1105,0,260,2107,57,-1,258,1106,0,305,1005,1,237,1206,-2,237,1105,1,283,2201,-3,-2,274,1106,0,237,1206,-2,335,1101,335,0,304,2007,293,-5,28