Pentagon numbers
Pentagonal numbers are generated by the formula, Pn=n(3n−1)/2. The first ten pentagonal numbers are:
Find the pair of pentagonal numbers, Pj and Pk, for which their sum and difference are pentagonal and D = |Pk − Pj| is minimised; what is the value of D?
1, 5, 12, 22, 35, 51, 70, 92, 117, 145, ...
It can be seen that P4 + P7 = 22 + 70 = 92 = P8. However, their difference, 70 − 22 = 48, is not pentagonal.Find the pair of pentagonal numbers, Pj and Pk, for which their sum and difference are pentagonal and D = |Pk − Pj| is minimised; what is the value of D?
I have wasted almost three days to solve this question, thinking in a very complicated way. I have read a lot of pdf's and websites online thinking that there should be a very complicated approach to solve this problem. Some of the papers which I have read are as follows:
Arithmetic of Pentagonal Numbers - Fibonacci quaterly
But none of them had any impact on my solution except the Wikipedia page which gave me information to check if the given number is pentagonal number or not.
The formula to check if the given number 'n' is pentagonal number or not is:
(1+(24n+1)1/2)/6 is an integer or not.
A simple looping will yield the result.
You can comment in the comment box below if you have any doubt or didn't understand anything. I will be glad to help you.
Please do comment if you have found any typo or have a different program or better program or have any suggestion. I will be very happy to view each of them.
You can also contact me.
Thank you. Have a nice day😃.
A simple looping will yield the result.
Program
You can download the source code from Gist Github pep44.pyOutput
Summary
I personally don't think that this problem deserves the Project Euler list. But anyhow they have added this problem on the website and I have written the solution. I am not fully satisfied with the solution. I have also thought of using two for loops with upper limit of 1 million for the first loop. That would have also worked.You can comment in the comment box below if you have any doubt or didn't understand anything. I will be glad to help you.
Please do comment if you have found any typo or have a different program or better program or have any suggestion. I will be very happy to view each of them.
You can also contact me.
Thank you. Have a nice day😃.