|
du熊填数字 Time Limit: 3000/2000 MS (C/Others) Memory Limit: 65536/32768 K (C/Others)
4 P1 D! s, {$ z1 D本次组委会推荐使用C、C++ Problem Description
6 w! ^" J. u0 Q( x3 E$ |
% {3 u+ k: `# k9 p* o* J, r du熊这几天使劲的往一个n 行n列的矩阵填0和1这两个数字,n为偶数,而且矩阵由里向外分成了n / 2层。比如n = 6时,矩阵的分层如下:
5 t1 H, [- _6 y( v du熊填数时有一个要求:不能存在两个相邻的1,且位于不同的层(这里的相邻指两格子共用一条线)。
+ ?; _- g0 w2 D" G) b1 \! V 请你帮du熊计算一下有多少种填法。( Q0 L( C4 G3 g+ v
Input
6 M4 C0 X. Z7 C; y2 W, F( c9 W# W" ^/ ~) v& r/ y& u
输入包含多组测试数据,每组数据包含一个偶数n (2 <= n <= 500)。
, V+ H0 z! T! T7 F- I( P8 J7 |2 DOutput1 ?1 M2 s# f o4 U9 s! L& a/ w# n
' d8 e5 A4 x) _3 G( t+ ~, L- H
请计算并输出对2012取余后的结果。5 o" U9 \: H; U4 A
3 A3 T0 k7 I4 s. u- Y7 E5 [
Sample Input
0 s8 P& `! }5 |' C+ D: H4 }5 x! n2 X, P1 r0 _0 w4 r
2$ q* ~$ C, m- y$ `6 U
4
" f7 r8 a) r( `) l4 G6 ^Sample Output+ [1 {+ i7 R8 l
16; l. X* |, N2 n
19523 ]6 m4 W" ^" J0 }) b. T6 S
) k- t7 V0 D& d+ V) ?Hint/ B) ?$ w7 X! t6 ^3 r5 [
当n = 4时% \3 `) _- o1 F; q* c% p6 O# `2 h
: j# D/ y& T' V7 K' v* ?" D
1011+ w, R! D3 x! j' x) x: _
0100% |' r2 `* Z/ k% c! I9 X0 v
0100
4 {0 V9 m4 h T4 Y/ ]0000, O, }% f) y, m- m% S
是满足要求的
! Y% U. @1 o* j1 n2 @. i) J9 F3 Y8 z! |
1 E$ T% n7 {$ ^ h* S' O/ Q3 X( ~1111$ _$ a: T( G" L: k
0100: l3 ~4 \" e9 F5 }$ w$ w
0100
' G5 Y# w3 k, x# x) Y0000! k9 X0 P. u: R, _
是不满足要求的,因为第一行第二列的1和第二行第二列的1相邻且位于不同的层。' D- x1 i, I5 ?
. O$ [, C# }& I g1 J
2 o: j1 g7 h% N( A' h0 t |