天堂岛的克里奥尔语有14个字:"放弃","鲍鱼","anagram","船","船夫","孩子","连接","优雅","增强","岛屿",男人","沙子","太阳"和"女人".
天堂时报发布了这个填字游戏:
填字游戏包含14个单词中的一些但没有其他单词.
写一个从...开始的Prolog程序
word(X) :-
member(X,
[
[a,b,a,n,d,o,n], [a,b,a,l,o,n,e], [a,n,a,g,r,a,m],
[b,o,a,t], [b,o,a,t,m,a,n], [c,h,i,l,d],
[c,o,n,n,e,c,t], [e,l,e,g,a,n,t], [e,n,h,a,n,c,e],
[i,s,l,a,n,d], [m, a, n], [s,a,n,d],
[s,u,n], [w, o, m, a, n]
]).
solution(H1,H2,H3,V1,V2,V3) :-
Run Code Online (Sandbox Code Playgroud)
并solution以这样的方式定义谓词
solution(H1,H2,H3,V1,V2,V3)
Run Code Online (Sandbox Code Playgroud)
是真,当且仅当H1,H2,H3,V1,V2,和V3是当写到上面给出的电网形成一个有效的填字游戏天堂岛的有效字.(例如,第二个字母H1应与第二个字母重合V1.)
使用查询
?- solution(H1,H2,H3,V1,V2,V3).
Run Code Online (Sandbox Code Playgroud)
解决填字游戏.找到填字游戏的所有解决方案.
提示:您可能希望从较小的填字游戏和不太丰富的词汇开始.