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
      ·
      2 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
        2 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
          ·
          2 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
            2 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.