This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.
%I A360632 #17 May 09 2025 02:58:52 %S A360632 1,3,10,21,73,190,510,1196,2895,6437,14281,29840,62405,124506,246383, %T A360632 473094,899000,1665763,3057894,5500889,9808150 %N A360632 Number of sets of integer-sided rectangular pieces that can tile a 3 X n rectangle. %e A360632 From _Robin Visser_, May 01 2025: (Start) %e A360632 For n = 1, there are a(1) = 3 possible sets of rectangular pieces that can tile a 3 x 1 rectangle: one 1 x 3 piece; one 1 x 2 piece and one 1 x 1 piece; or three 1 x 1 pieces. %e A360632 For n = 2, there are a(2) = 10 possible sets of rectangular pieces that can tile a 3 x 2 rectangle: one 2 x 3 piece; one 2 x 2 piece and one 1 x 2 piece; one 2 x 2 piece and two 1 x 1 pieces; two 1 x 3 pieces; one 1 x 3 piece, one 1 x 2 piece, and one 1 x 1 piece; one 1 x 3 piece and three 1 x 1 pieces; three 1 x 2 pieces; two 1 x 2 pieces and two 1 x 1 pieces; one 1 x 2 piece and four 1 x 1 pieces; or six 1 x 1 pieces. (End) %o A360632 (Python) %o A360632 def a(n): %o A360632 A = [[[set() for i in range(n+1)] for j in range(n+1)] for k in range(n+1)] %o A360632 A[0][0][0].add(()); m = n+1; %o A360632 for (i,j,k) in [(x,y,z) for x in range(m) for y in range(m) for z in range(m)]: %o A360632 for (l,p) in [(x,y) for x in range(1,i+1) for y in A[i-x][j][k]]: %o A360632 A[i][j][k].add(tuple(sorted(list(p)+[(1,l)]))) %o A360632 for (l,p) in [(x,y) for x in range(1,j+1) for y in A[i][j-x][k]]: %o A360632 A[i][j][k].add(tuple(sorted(list(p)+[(1,l)]))) %o A360632 for (l,p) in [(x,y) for x in range(1,k+1) for y in A[i][j][k-x]]: %o A360632 A[i][j][k].add(tuple(sorted(list(p)+[(1,l)]))) %o A360632 for (l,p) in [(x,y) for x in range(1,min(i,j)+1) for y in A[i-x][j-x][k]]: %o A360632 if (i==j): A[i][j][k].add(tuple(sorted(list(p)+[tuple(sorted((2,l)))]))) %o A360632 for (l,p) in [(x,y) for x in range(1,min(j,k)+1) for y in A[i][j-x][k-x]]: %o A360632 if (j==k): A[i][j][k].add(tuple(sorted(list(p)+[tuple(sorted((2,l)))]))) %o A360632 for (l,p) in [(x,y) for x in range(1,min(i,j,k)+1) for y in A[i-x][j-x][k-x]]: %o A360632 if (i==j==k): A[i][j][k].add(tuple(sorted(list(p)+[tuple(sorted((3,l)))]))) %o A360632 return len(A[n][n][n]) # _Robin Visser_, May 01 2025 %Y A360632 Third column of A360629. %Y A360632 Cf. A000041 (1 x n rectangle), A360631 (2 x n rectangle). %K A360632 nonn,more %O A360632 0,2 %A A360632 _Pontus von Brömssen_, Feb 14 2023 %E A360632 a(17)-a(20) from _Robin Visser_, May 04 2025 %E A360632 a(0) = 1 prepended by _Robin Visser_, May 05 2025