44BEN2ZTQOJI2EZFAF3U2Y5U3IARCFTRZ7TKDEXCSCBAVMOFNAXQC
## Day 12
I used a `std.StringHashMap(std.ArrayList([]const u8))` for storing the routes
from every cave to the adjacent ones and a `std.StringHashMap(void)` for storing
the seen ones.
In first part I recursively check all the caves starting from `start` cave,
trying all the paths increasing the counter on every `end` reach. I only collent
small caves in seen HashMap.
In second part the seen is a `std.StringHashMap(u2)`, so I can store how many
times a small cave is seen. (Using `+|=` to avoid overflow).
These solutions are slow: 7ms for the first part and 272 ms for the second which
is way too much.