給你 n,問你有 多少個 n位數 x,(x^2)%(1000000000)=987654321。

一開始沒什麼頭緒。

亂搜一下發現 n<=8 時沒有任何數,n=9 時則有 8 個。

當 n>=10 可以發現 無論 前面幾位是多少,只要 後9位 是 那8個,都會符合要求。

所以可以推出 如下公式

if(n<9) ans=0;

if(n=9)ans=8;

if(n=10)ans=9*8; <第一位只有9種選擇>

if(n>10)ans=9*8*(10^(n-10)); <其他位有10種選擇>

我的code

http://snipt.org/zfgJ7

p.s: 遇到毫無想法的題目,可以先用 搜尋法,或許能找到解題的契機。

 

 

文章標籤
創作者介紹

jghs1328

jghs1328 發表在 痞客邦 PIXNET 留言(0) 人氣()