b: =proc(n,i,m,l)选项记忆`如果`(n=0,
`如果`(l=[]或{l[]}={1}或i=m和{子平面(1=1,l)[]}=
{1} ,1,0),加(b(n-1,j,最大值(m,j),`if`(l=[],[1],
`如果`(j=m+1,底土(1=0,`如果`(j=i+1,[l[],1],[l[],0])),
`如果`(j=i+1或j=1且i=m,底土(j=1,l),l)),j=1..m+1))
结束时间:
a: =n->b(n,0$2,[]):
seq(a(n),n=0..18);