"""
Pentagonal numbers are generated by the formula, Pn=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 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?
"""

def create_pentagonal(amount):
    numbers = []
    for i in range(1, amount + 1):
        temp = i * (3 * i - 1) / 2
        numbers.append(int(temp))
    return numbers

pentas = create_pentagonal(2500)

for i in range(len(pentas)):
    for j in range(i):
        a = pentas[i]
        b = pentas[j]
        if a + b in pentas and a - b in pentas:
            print(a, b, a- b,  sep='\t')
