Tuples for cache
If you want to use a list of values as a key for a dictionary, use a tuple.
I was solving The Coin Change Problem on HackerRank. I solved the problem recursively but I needed to cache my function.
If you try to use a list as a key for a dictionary here is what you get.
But if you use a tuple, it works well, because they are hashable.