This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Advent of Code 2024. Day 20: Race Condition. | |
// dotnet fsi aoc20.fsx | |
open System | |
open System.IO | |
open System.Collections.Generic | |
open System.Diagnostics | |
module Array2D = | |
let inBounds (a : 'a[,]) (x, y) = |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Advent of Code 2024. Day 19: Linen Layout. | |
// dotnet fsi aoc19.fsx | |
open System | |
open System.IO | |
open System.Collections.Concurrent | |
let trim (input : string) = input.Trim() | |
let split (splitter : string) (input : string) = input.Split(splitter) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Advent of Code 2024. Day 18: RAM Run. | |
// dotnet fsi aoc18.fsx | |
open System | |
open System.IO | |
open System.Collections.Generic | |
type Pos = (int*int) | |
type PQ = PriorityQueue<Pos * int, int> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Advent of Code 2024. Day 17: Chronospatial Computer. | |
// dotnet fsi aoc17.fsx | |
open System | |
open System.IO | |
type Computer = { | |
regA : int64 | |
regB : int64 | |
regC : int64 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Advent of Code 2024. Day 16: Reindeer Maze. | |
// dotnet fsi aoc16.fsx | |
open System | |
open System.IO | |
open System.Collections.Generic | |
module Maze = | |
let get (a : 'a[,]) (x, y) = | |
Array2D.get a y x |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Advent of Code 2024. Day 15: Warehouse Woes. | |
// dotnet fsi aoc15.fsx | |
open System | |
open System.IO | |
module Warehouse = | |
let inBounds (a : 'a[,]) (x, y) = | |
let first = y >= 0 && y < a.GetLength(0) | |
let second = x >= 0 && x < a.GetLength(1) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Advent of Code 2024. Day 14: Restroom Redoubt. | |
// dotnet fsi aoc14.fsx | |
open System | |
open System.IO | |
open System.Diagnostics | |
type Pos = (int * int) | |
type Robot = { p : Pos; v : Pos } |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Advent of Code 2024. Day 13: Claw Contraption. | |
// dotnet fsi aoc13.fsx | |
open System | |
open System.IO | |
type Machine = | |
{ ax : int64 | |
bx : int64 | |
ay : int64 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Advent of Code 2024. Day 12: Garden Groups. | |
// dotnet fsi aoc12.fsx | |
open System | |
open System.IO | |
module Garden = | |
let inBounds (a : 'a[,]) (x, y) = | |
let first = y >= 0 && y < a.GetLength(0) | |
let second = x >= 0 && x < a.GetLength(1) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Advent of Code 2024. Day 11: Plutonian Pebbles. | |
// dotnet fsi aoc11.fsx | |
open System | |
open System.IO | |
let applyRules stone = | |
if stone = 0L then [1L] | |
else | |
let s = stone.ToString() |
NewerOlder