Email: [email protected]
GitHub: Jedijoe100
LinkedIn: Joseph Kent
Web repository with numerous computational mathematics problems. I have solved a large number using python and mathematical knowledge.
Project Euler is a repository full of computational mathematics problems. These problems are nearly impossible to solve without using computational tools. These problems have also been designed such that any modern computer (from the last 20 years) can solve the problem in under a minute.
The problems on Project Euler have taught me numerous things. Firstly they have taught me about taking a data driven approach to solving problems. For example: problem 45 requires finding a triangle number that is also a pentagonal and hexagonal number. This is made easy through the use of a python set which allows for checking if numbers are in a set of pregenerated pentagonal and hexagonal numbers. The more difficult problems have challenged me to understand the deeper mathematics of the problem to utilise techniques that are unique to that problem. For example: through numerous problems I have learnt deeper truths of prime numbers with the most obvious example being that a prime number is always 6n+1 or 6n-1 where n is an arbitrary integer (excluding 2 and 3). This is true because you can consider the prime numbers modulo 6: 0 mod 6, 2 mod 6, 4 mod 6 are all multiples of two to not possible and 3 mod 6 is a multiple of three leaving 1 mod 6 and 5 mod 6 as the only possible numbers that could be prime. Finally they have also taught me to be thorough in my implementations of the problems. For example: problem 54 involves creating an algorithm for calculating the winning hand from two hands of poker. This requires every edge case of poker to be implemented such that the number is accurate.