Recently, I found some of the most interesting problems I've solved in a long time. I wrote a post sharing my solutions. Please take a look here.
The problem is this one. In case you want to give it a try before reading my solution.
I strongly suggest you try this problem. Let me know how it goes.
Have a great day,
Alberto.