0206 被遮挡平方数
* * * *
拉格朗日计划
* * * *
被遮挡平方数

找出唯一一个其平方形如1X2X3X4X5X6X7X8X9X0的正整数,其中每个X都表示一位数字。

本题难度:



解答

设该数为a,显然a的个位只能是0,从而$a^2$的个位和十位都是0。

令$n=a/10$,则$n^2$具有1X2X3X4X5X6X7X8X9的形式,从而其个位只能是3或7。

$\sqrt{19293949596979899}-\sqrt{10203040506070809}$大约是3700万左右,而n的个位数只能取3或7,因此若枚举$\sqrt{10203040506070809}$和$\sqrt{19293949596979899}$之间的n,总枚举量大约是$3700/5$约等于500多万,完全可行。

最终结果是$a=1389019170$。

n=101010103

while n<138902662:
    m=str(n*n)
    if len(m)==17 and m[::2]=="123456789":
        print m+"00",n*10
        break
    else:
        n+=4 if n%10==3 else 6