|
du熊填数字 Time Limit: 3000/2000 MS (C/Others) Memory Limit: 65536/32768 K (C/Others) $ N+ u7 L5 S \' a
本次组委会推荐使用C、C++ Problem Description
$ D1 a# U% J* s+ j ^* f) o" i% A+ m0 Z7 z2 T" S
du熊这几天使劲的往一个n 行n列的矩阵填0和1这两个数字,n为偶数,而且矩阵由里向外分成了n / 2层。比如n = 6时,矩阵的分层如下:
& z' F1 j7 h" F2 j; y) Q+ G2 W du熊填数时有一个要求:不能存在两个相邻的1,且位于不同的层(这里的相邻指两格子共用一条线)。
$ E$ y4 v# k) l8 h9 ^1 X5 Q 请你帮du熊计算一下有多少种填法。
/ R/ H% x7 M% I9 @% WInput
' S& x& f! s D5 {+ O4 ]3 _8 n; ]
输入包含多组测试数据,每组数据包含一个偶数n (2 <= n <= 500)。
5 O2 K+ V8 J/ M4 n) V7 GOutput1 B; v* n! a2 I% U, D7 X
7 }* S; H( X7 u" X, k8 n8 X9 s" V7 s 请计算并输出对2012取余后的结果。
9 T4 J/ x6 E6 L& y/ b
% N. o# D T* l4 L# N; [! HSample Input
* Q- U- J! r! X) }/ Y: E, l! p. f9 o7 _7 {" ]! n9 q( K1 f
2
0 s8 \( W7 m: [5 J4) o. r% h s$ B; B) y
Sample Output5 j. P* o7 o! g3 g0 d* H
16
) @- M) P# g' g; ~19522 q' Y, a! k1 k ?1 u3 X9 L5 C: M
9 p2 I' G- u L% o# O! q
Hint
9 s8 n4 g+ L- p" S, z当n = 4时, K1 t6 T+ P9 I* B& p2 H
& F* T7 | W8 G4 B5 a4 w. T10111 C- F6 ]2 F8 G. N6 l, h! D h
0100
7 J7 X6 ~' ~1 A0 N0 {# x0100
3 B E( }. ` J5 y00008 s S6 P4 b9 E/ C" n3 ]4 a( @# C
是满足要求的
! b9 Q0 `. M' T# v7 Q' a8 P+ W. E6 p1 M$ L+ H
1111
0 T( _* x+ T$ C5 T9 K: P" `' A0100
1 P! R3 B3 m1 y5 f0100 t, A2 ?* K: _8 b! D' n, m) X
0000
' s9 z( ~0 J! x9 H% T3 V) z是不满足要求的,因为第一行第二列的1和第二行第二列的1相邻且位于不同的层。& l& d1 r& o ]; B. N( u
6 t5 Z7 ^' C' @2 E# t
* `; K5 Q; e' T5 H0 O- X1 ]$ U
|