Day 3: Mull It Over

Megathread guidelines

  • Keep top level comments as only solutions, if you want to say something other than a solution put it in a new post. (replies to comments can be whatever)
  • You can send code in code blocks by using three backticks, the code, and then three backticks or use something such as https://topaz.github.io/paste/ if you prefer sending it through a URL

FAQ

  • Quant@programming.dev
    link
    fedilink
    arrow-up
    1
    ·
    20 days ago

    Uiua

    Regex my beloved <3

    Run with example input here

    FindMul  regex "mul\\((\\d+),(\\d+)\\)"
    
    PartOne  (
      &rs  &fo "input-3.txt"
      FindMul
      /+≡(×°⊟⋕⊏1_2)
    )
    
    IdDont  ⊗□"don't()"
    
    PartTwo  (
      &rs  &fo "input-3.txt"
      regex "mul\\(\\d+,\\d+\\)|do\\(\\)|don't\\(\\)"
      (IdDont.
        1⊃↘↙
        ⊗□"do()".
        ⊂↘1
      | IdDont.
        ≠⧻,
      )
      ▽♭=0⌕□"do()".
      (×°⊟⋕⊏1_2FindMul)
      /+
    )
    
    &p "Day 3:"
    &pf "Part 1: "
    &p PartOne
    &pf "Part 2: "
    &p PartTwo