【题目大意】:
求出有多少个N位数的平方的最后9位为987654321。
【题目分析】:
N<=2^31-1,所以枚举肯定是不行,要找规律。
我们发现这样一个事实,能影响平方后9位的只有原数的后9位。
原因在于做乘法的时候,最后的9位是由得数累加的最后9层的和决定的。
所以我们只要找到N<=9的情况就可以了。
经过写一个小小的枚举程序,我们发现n<=8时无解。n=9时,有8个解。
而当n>9时,解的个数根据乘法原理应该是8*9*10^(n-10)即72*10^(n-10)。
所以代码也就会很短了。
P.s. 最开始想了好久没有想出问题的实质,最开始看题解的时候也是百思不得其解。我的数论确实要加强了…………
【代码】: