I’ve always enjoyed solving problems, and coding is one of the ways where I can solve problems in a mathematically rigorous way, and that has numerous correct solutions. I have not had any formal programming classes; most of it is self taught asking the right questions to Google, reading other people’s solutions and solving practise problems. I have learnt a lot from reading other people’s code and seeing how they solve the problems, and thought that now that I am more experienced I would return the favour.
I am not saying my solution is the best – in fact I am fairly certain there is a better way to do it. If you think of an alternate way to tackle these problems, please contact me, and I’d be happy to talk with you.