Spyke

Replies

Comment on

💃 - 2025 DAY 6 SOLUTIONS - 💃

Uiua

I'm new to Uiua, so probably not the best way to express the solution!

ParseRows ← (
  ⊜∘⊸≠@\n
  ⍜⇌°⊂ # Get the row of operations.
)
ParseOperations ← ⊜⊢⊸≠@\s
SumCalculations ← (
  ≡(
    ⍣(◇/×°@*
    | ◇/+°@+
    )
  )
  /+
)

Part₁ ← (
  ParseRows
  ⊓(ParseOperations
  | ⍉ ≡(⊜⋕⊸≠@\s) # Parse columns.
  )
  SumCalculations
)

Part₂ ← (
  ParseRows
  ⊓(ParseOperations
  | ⊜(□≡(⋕▽⊸≠@\s)) ≡/↥⊸≠@\s⍉ # Parse numbers.
  )
  SumCalculations
)

&fras "6.txt"
⊃Part₁ Part₂

Comment on

👪 - 2025 DAY 7 SOLUTIONS - 👪

Uiua

Heavily copied ahem, inspired by @[email protected]'s solution :)

Parse     ← °⊂ ▽⊸≡/↥≠@.⊜∘⊸≠@\n
Flow      ← +⊃(/+≡↻1_¯1¤×|×⊙¬)
Propagate ← ˜∧(⊸˜Flow)
Part₁     ← /+♭↧ ⊸Propagate
Part₂     ← /+⊣Propagate ⊙(˜⊂0)

$ .......S.......
$ ...............
$ .......^.......
$ ...............
$ ......^.^......
$ ...............
$ .....^.^.^.....
$ ...............
$ ....^.^...^....
$ ...............
$ ...^.^...^.^...
$ ...............
$ ..^...^.....^..
$ ...............
$ .^.^.^.^.^...^.
$ ...............
&fras "7.txt"

⊃(Part₁|Part₂) Parse

Comment on

🎁 - 2025 DAY 9 SOLUTIONS - 🎁

Uiua

My silly part one solution, because I have no idea how to do part two (this is usually the difficulty at which I bow out, but I want to try actually expanding my knowledge this year!).

Parse         ← ⊜(⊜⋕⊸≠@,)⊸≠@\n
CornerClosest ← ⊏⊢⍏⊸≡⌞(/+ⁿ2-)
Big           ← 9999999
RectSize      ← /×+1⌵-
Part₁ ← (
  ∩⌟∩⌟CornerClosest 0_0 1000000_1000000 Big_0 0_Big
  ↥∩RectSize
)

$ 7,1
$ 11,1
$ 11,7
$ 9,7
$ 9,5
$ 2,5
$ 2,3
$ 7,3

&fras "9.txt"
Part₁ Parse

You reached the end