2045

由于上次做那个环素数的题,想到后面的是利用前面已经做好的继续做下去,知道n,其实这道题的想法也是这样子,当我想的是函数递归,递归结束条件是a[0]==a[n-1]&&m==n-1.后来看答案才知道这道题原来是有公式可以套用的,具体如下

此题公式为f(n)=f(n-1)+f(n-2)*2 (n>=4)
1.若前n-1合法,则首尾不同,再添1个时,只有1种方法;
2.若前n-1不合法,而添1个时合法,即只是因为首尾相同引起的不合法,这样前n-2必定合法。此时第n个的添 加有2种方法。
3.f(1)=3;f(2)=6;f(3)=6.至此,可得。

以后多想想这方面,好多题都是这个样子的。

posted @ 2009-04-07 14:45  yansirfuture  阅读(158)  评论(0编辑  收藏  举报