Last edited by realnumber 2019-8-30 07:54baike.baidu.com/item/佩尔方程/11029962?fr=aladdin
$x_n=2x_1x_{n-1}-x_{n-2}$
$y_n=2x_1y_{n-1}-y_{n-2}$
其中$(x_1,y_1)$是$x^2-Dy^2=1$的最小正整数解.
按上面思路编程就很“数学”了,耗时近于O($log_{x_1}k$).
另:可以按
for n=k downto 1 do { m,n关系写为一元二次方程求根公式,m为整数 },直接搜索,找到就是$m^2+n^2$最大,猜是也能通过或大部分通过,耗时最差O($x_{n+1}-x_{n}$).