0044 五边形数
* * * *
拉格朗日计划
* * * *
五边形数

第n个五边形数是$P_n=n(3n-1)/2$。前十个五边形数依次是$1, 5, 12, 22, 35, 51, 70, 92, 117, 145, \ldots$

可以看出$P_4+P_7=22+70=92=P_8$,不过它们的差$70-22=48$并不是五边形数。

在所有和、差均为五边形数的五边形数对$P_j,P_k$中,找出$D=|P_j-P_k|$的最小值。

本题难度:



解答

似乎没有什么好方法,暴力搜索前5000个五边形数,发现只有一对符合要求,即$P_{1020}=1560090$和$P_{2167}=7042750$,它们的差是$5482660$。我想这应该就是差的最小值。
p=[i*(3*i-1)/2 for i in range(10001)]
q=set(p)
  
print [[p[j]-p[i],i,j,p[i],p[j]] for i in range(1,5001) for j in range(i+1,5001) if p[j]+p[i] in q and p[j]-p[i] in q]