HDU 1143 Tri Tiling
2015-03-14 17:18
288 查看
#include"stdio.h" int main() { int T,i,a[31]={1,0,3}; for(i=4;i<=30;i++) a[i]=4*a[i-2]-a[i-4]; while(~scanf("%d",&T),T+1) { printf("%d\n",a[T]); } return 0; }
递推题目
首先,每相差两个数,就有3种排列情况
然后再考虑的,拼在一起的情况,有2*(.....)省略号为2*(a[i-6] + a[i-4] +......+a[0]) (我假设从6开始)
a[i] = 3*a[i-2] + 2*(a[i-4] + a[i-6] +......+a[0]);
a[i-2]
= 3*a[i-4] + 2*(a[i-6] + a[i-8] +......+a[0]);
a[i-2]
-a[i-4]= 2*a[i-4] + 2*(a[i-6] + a[i-8] +......+a[0]);
所以,最后可以得到关系式
a[i]=4*a[i-2]-a[i-4];
相关文章推荐
- hdu 1143 Tri Tiling
- HDU 1143 Tri Tiling (递推)
- hdu 1143 Tri Tiling (DP)
- HDU 1143 Tri Tiling (状压DP)
- HDU 1143 Tri Tiling
- hdu 1143 Tri Tiling
- HDU 1143 Tri Tiling (递推)
- 【DP】HDU 1143 Tri Tiling
- hdu 1143 Tri Tiling (DP)
- 【DP】HDU 1143 Tri Tiling
- hdu 1143 Tri Tiling
- HDU 1143 Tri Tiling
- HDU 1143 Tri Tiling(dp)
- hdu 1143 Tri Tiling 递推
- HDU 1143 Tri Tiling
- hdu-1143-Tri Tiling
- HDU 1143 Tri Tiling (数学)
- HDU 1143 Tri Tiling
- hdu 1143 Tri Tiling
- HDU1143 Tri Tiling 递推