被称为戴克路径。它是 x 和 y 轴的平面,其中每一步将只有 (x+1,y+1) 或 (x+1,y-1) 并且将始终保持在 x 轴上方
K 应该表示 Dyck 路径的峰值。当 K 为 2 时,应该意味着峰值为 2 和 3。
形成匹配括号 a = '(', and b = ')' 的合法序列列表,长度为 2N
例如。[a,a,b,b] 和 [a,b,a,b] 是 N = 2 的合法列表 [a,b,b,a] 和 [b,a,b,a] 不满足N = 2
需要定义谓词 listFind(L,K,N) 当 L 具有 2N 阶的列表时满足,对于某些 k >= K
例如
|?- listFind(L,1,3).
L = [a,b,a,b,a,b] ? ;
L = [a,b,a,a,b,b] ? ;
L = [a,a,b,b,a,b] ? ;
L = [a,a,b,a,b,b] ? ;
L = [a,a,a,b,b,b] ? ;
no
|?- listFind(L,2,3).
L = [a,a,b,b,a,b] ? ;
L = [a,a,b,a,b,b] ? ;
L = [a,a,a,b,b,b] ? ;
no
提前致谢。