Problem #44
Difficulty: 5%
Pentagon Numbers
Solution Language: Java
Problem Statement
Pentagonal numbers are generated by the formula, P(n) = n(3n-1)/2. The first ten pentagonal numbers are:
1, 5, 12, 22, 35, 51, 70, 92, 117, 145, …
It can be seen that P(4) + P(7) = 22 + 70 = 92 = P(8). However, their difference, 70 - 22 = 48, is not pentagonal.
Find the pair of pentagonal numbers, P(j) and P(k), for which their sum and difference are pentagonal and D = |P(k) - P(j)| is minimised; what is the value of D?
Approach
The solution involves:
- Generating pentagonal numbers
- Testing pairs to find where both sum and difference are pentagonal
- Using a function to test if a number is pentagonal
- Finding the pair with minimal difference
- Using the formula to check pentagonality: n = (1 + sqrt(1 + 24k))/6 must be an integer