ちょっと変な解き方をしてみる

「数列は、次の漸化式で与えられる。(第n+3項)=(−1)×(第n+2項)+2×(第n+1項)+8×(第n項),(第1項)=(第2項)=(第3項)=1。この数列のすべての項は平方数(整数の2乗)であることを証明せよ」

数学オリンピックについて思うこと・その1 - hiroyukikojimaの日記

数列 b_n は、漸化式 b_{n+2}=b_{n+1}-2b_n、最初の 2 項が b_2=b_1=1 で与えられるとする。この数列の各項を 2 乗した数列 a_n=b_n^2 を考えると、

  • b_n は整数なので、a_n は平方数である。
  • 数列 b_n の定義から b_2=b_1=1,b_3=-1 なので、a_n の最初の 3 項は a_3=a_2=a_1=1 である。
  • a_n の漸化式を考えると、a_{n+2}=b_{n+1}^2-4b_{n+1}b_n+4b_n^2\cr\qquad\qquad=a_{n+1}-4b_{n+1}b_n+4a_na_{n+3}=b_{n+2}^2-4b_{n+2}b_{n+1}+4b_{n+1}^2\cr\qquad\qquad=b_{n+1}^2-4b_{n+1}b_n+4b_n^2-4(b_{n+1}-2b_n)b_{n+1}+4b_{n+1}^2\cr\qquad\qquad=b_{n+1}^2+4b_{n+1}b_n+4b_n^2\cr\qquad\qquad=a_{n+1}+4b_{n+1}b_n+4a_n なので、a_{n+3}=-a_{n+2}+2a_{n+1}+8a_n という漸化式に従う。

よって a_n は題意を満たす数列で、各項は平方数である。
問題の漸化式からは数列が一意に決まるので、題意を満たす数列の各項は平方数である。

どこから b_{n+2}=b_{n+1}-2b_n を見つけてきたのですか

まず、a_n の漸化式から a_n の一般項を求めました (面倒くさいので一部 Maxima に解かせました)。それから a_n^{1/2} という数列の一般項を求め、その数列が従う漸化式を考えました。どう見ても二度手間です本当にありがとうございました。(ちなみに b_n の一般項は b_n=\frac{1}{\sqrt{7}i}\left[\left(\frac{1+sqrt{7}i}{2}\right)^n-\left(\frac{1-sqrt{7}i}{2}\right)^n\right&#93。)
数学オリンピックの代表候補者にあっという間に解かれたそうだが、解き方が違うのだろうか解き方は同じで計算が速いのだろうか。