You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

94 lines
1.5 KiB
Plaintext

$ seeds: 79 14 55 13
$
$ seed-to-soil map:
$ 50 98 2
$ 52 50 48
$
$ soil-to-fertilizer map:
$ 0 15 37
$ 37 52 2
$ 39 0 15
$
$ fertilizer-to-water map:
$ 49 53 8
$ 0 11 42
$ 42 0 7
$ 57 7 4
$
$ water-to-light map:
$ 88 18 7
$ 18 25 70
$
$ light-to-temperature map:
$ 45 77 23
$ 81 45 19
$ 68 64 13
$
$ temperature-to-humidity map:
$ 0 69 1
$ 1 0 69
$
$ humidity-to-location map:
$ 60 56 37
$ 56 93 4
TestInput ←
PartI ← (
↘6⊔⊃⊢(↘1)⊜□≠@\n.
⊓(
⊜parse≠@ .
| ∧(
>@9⊢.⊔
(⍜(⊔⊢⇌|(⊂|¤;)type.):⊜parse≠@ .|⊂⊙i;)
)⊙{}
)
∧(
+×⊙¬⊃⋅∘(
⊓⊔¤
∩/+≡(
⍘[⊙⊙∘]
×⊃(≥⋅⊙⋅∘|<+⋅⊙⊙∘|:-:⊙⊙⋅∘)
⊃∘×⊙+
)
)
):
)
Prune ← ▽≡(≠0⊢⇌).
PartII ← (
↘6⊔⊃⊢(↘1)⊜□≠@\n.
⊓(
↯¯1_2⊜parse≠@ .
| ∧(
>@9⊢.⊔
(
⊜parse≠@ .
⍜⍘[⊙⊙∘]⊃(⋅∘|⋅⋅∘|-:)
⍜(⊔⊢⇌|(⊂|¤;)type.):
| ⊂⊙i;
)
)⊙{}
)
:
∧(
⊙⊙[]⊔
∧(
⊙⊙[]
∧(
⊙(↙2.)
≡\-◫2[⊃(∘|↧↥⊙:⊙⊙∘|↥⊙↧⊙⊙⋅∘|⋅∘)]∩⍘⊟∩\+
⊃(⋅∘|Prune⊂⊏0_2⊙⋅∘|Prune⊂¤⍜⊢+⊡1⊙(⊡2)⊙⊙⋅∘)
):
;
)
⊏⍏≡⊢.⊂
∧((⊂|⍜(⊡0_1)+:⊡1)=⊃(⊢|/+⊢⋅∘|⊙∘))⊃(↘1|¤⊢)
)
)
/↧ PartI TestInput
/↧≡⊢ PartII TestInput
/↧ PartI &fras "day05.in"
/↧≡⊢ PartII &fras "day05.in"