diff options
| author | Andreas Grois <andi@grois.info> | 2025-11-16 21:08:35 +0100 |
|---|---|---|
| committer | Andreas Grois <andi@grois.info> | 2025-11-16 21:08:35 +0100 |
| commit | 3a9ff92902df508074daa3017d1a71dae7e85248 (patch) | |
| tree | 3ddc5f4dc040ce2aa762c642569ff274f36049e7 /Day5.lean | |
| parent | 75628f029abfd9829a1259a6e1dd7758d548c13f (diff) | |
Lean 4.25feature/day17
Diffstat (limited to 'Day5.lean')
| -rw-r--r-- | Day5.lean | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -110,7 +110,7 @@ structure Almanach where private def parseSeeds (input : String) : Except String (List Seed) := if input.startsWith "seeds: " then let input := input.drop 7 - let input := String.trim <$> input.split Char.isWhitespace + let input := String.trim <$> input.splitToList Char.isWhitespace let numbers := input.mapM String.toNat? let numbers := if let some numbers := numbers then pure numbers else throw s!"Failed to parse a seed number in {input}" List.map NatId.fromNat <$> numbers @@ -118,7 +118,7 @@ private def parseSeeds (input : String) : Except String (List Seed) := throw s!"Seeds line does not start with \"seeds: \": {input}" private def parseMapping {α β : Type} [NatId α] [NatId β] (input : String) : Except String $ Mapping α β := do - let input := String.trim <$> input.split Char.isWhitespace + let input := String.trim <$> input.splitToList Char.isWhitespace let nums ← input.mapM $ (λ o ↦ if let some o := o then pure o else throw s!"Failed to parse mapping {input}, expected number") ∘ String.toNat? match nums with | [a,b,c] => pure $ {inputStart := NatId.fromNat b, outputStart := NatId.fromNat a, length := c} |
