login
A219967
Number A(n,k) of tilings of a k X n rectangle using straight (3 X 1) trominoes and 2 X 2 tiles; square array A(n,k), n>=0, k>=0, read by antidiagonals.
10
1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 2, 1, 0, 1, 1, 1, 2, 3, 3, 2, 1, 1, 1, 0, 2, 4, 3, 4, 2, 0, 1, 1, 0, 3, 8, 8, 8, 8, 3, 0, 1, 1, 1, 4, 13, 21, 28, 21, 13, 4, 1, 1, 1, 0, 5, 19, 31, 65, 65, 31, 19, 5, 0, 1, 1, 0, 7, 35, 70, 170, 267, 170, 70, 35, 7, 0, 1
OFFSET
0,25
LINKS
Wikipedia, Tromino
EXAMPLE
A(4,4) = 3, because there are 3 tilings of a 4 X 4 rectangle using straight (3 X 1) trominoes and 2 X 2 tiles:
._._____. ._____._. ._._._._.
| |_____| |_____| | | . | . |
| | . | | | | . | | |___|___|
|_|___| | | |___|_| | . | . |
|_____|_| |_|_____| |___|___| .
Square array A(n,k) begins:
1, 1, 1, 1, 1, 1, 1, 1, 1, ...
1, 0, 0, 1, 0, 0, 1, 0, 0, ...
1, 0, 1, 1, 1, 2, 2, 3, 4, ...
1, 1, 1, 2, 3, 4, 8, 13, 19, ...
1, 0, 1, 3, 3, 8, 21, 31, 70, ...
1, 0, 2, 4, 8, 28, 65, 170, 456, ...
1, 1, 2, 8, 21, 65, 267, 804, 2530, ...
1, 0, 3, 13, 31, 170, 804, 2744, 12343, ...
1, 0, 4, 19, 70, 456, 2530, 12343, 66653, ...
MAPLE
b:= proc(n, l) option remember; local k, t;
if max(l[])>n then 0 elif n=0 or l=[] then 1
elif min(l[])>0 then t:=min(l[]); b(n-t, map(h->h-t, l))
else for k do if l[k]=0 then break fi od;
b(n, subsop(k=3, l))+
`if`(k<nops(l) and l[k+1]=0, b(n, subsop(k=2, k+1=2, l)), 0)+
`if`(k+1<nops(l) and l[k+1]=0 and l[k+2]=0,
b(n, subsop(k=1, k+1=1, k+2=1, l)), 0)
fi
end:
A:= (n, k)-> `if`(n>=k, b(n, [0$k]), b(k, [0$n])):
seq(seq(A(n, d-n), n=0..d), d=0..14);
MATHEMATICA
b[n_, l_] := b[n, l] = Module[{ k, t}, If [Max[l] > n, 0, If[n == 0 || l == {}, 1, If[ Min[l] > 0 , t = Min[l]; b[n-t, l-t], k = Position[l, 0, 1][[1, 1]]; b[n, ReplacePart[l, k -> 3]] + If[k < Length[l] && l[[k+1]] == 0, b[n, ReplacePart[l, {k -> 2, k+1 -> 2}]], 0] + If[k+1 < Length[l] && l[[k+1]] == 0 && l[[k+2]] == 0, b[n, ReplacePart[l, {k -> 1, k+1 -> 1, k+2 -> 1}]], 0] ] ] ] ]; a[n_, k_] := If[n >= k, b[n, Array[0&, k]], b[k, Array[0&, n]]]; Table[Table[a[n, d-n], {n, 0, d}], {d, 0, 14}] // Flatten (* Jean-François Alcover, Dec 16 2013, translated from Maple *)
CROSSREFS
Columns (or rows) k=0-10 give: A000012, A079978, A000931(n+3), A219968, A202536, A219969, A219970, A219971, A219972, A219973, A219974.
Main diagonal gives: A219975.
Sequence in context: A006842 A299038 A273693 * A060505 A336727 A316101
KEYWORD
nonn,tabl
AUTHOR
Alois P. Heinz, Dec 02 2012
STATUS
approved