Day 19 - Linen Layout

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

  • Gobbel2000
    link
    fedilink
    arrow-up
    3
    ·
    3 days ago

    About 3ms. A manual implementation might be a bit faster, but not by much. The regex crate is quite optimized for pretty much these problems.

    • CameronDevOPM
      link
      fedilink
      arrow-up
      2
      ·
      edit-2
      3 days ago

      Wow, that is very fast, nice. I was happy with 120ms, seems I’m leaving a lot of performance on the table.

      Edit: Regex cut my total time in half, but I am measuring the whole execution, still a massive improvement.

      • Gobbel2000
        link
        fedilink
        arrow-up
        3
        ·
        3 days ago

        The 3ms are for part 1 only, part 2 takes around 27ms. But I see that our approaches there are very similar. One difference that might make an impact is that you copy the substrings for inserting into the hashmap into Strings.

        • CameronDevOPM
          link
          fedilink
          arrow-up
          2
          ·
          edit-2
          3 days ago

          Removing the string copy with the length->count array from @sjmulder saved me 20ms, so not super significant. I’ll have to play the the profiler and see what I am doing wrong.

          I think your approach looks a lot more Rust-like, which I like. Part 1 in 4 lines is very nice.