SICStus Prolog:将域转换为字符串

时间:2016-11-27 18:13:59

标签: prolog clpfd

我正在尝试解决地图着色问题,下面是解决方案,它似乎有效。但是,域只能用1到4的整数表示。我想把它们放在字符串中,例如。

colours: {blue, green, yellow, red}.我该怎么做?以下是代码:

:- use_module(library(clpfd)). 
solve_AUSTRALIA(WA,NT,Q,SA,NSW,V):-
   domain([WA,NT,Q,SA,NSW,V], 1, 4),%colours represented by integers from 1 to 4
   WA #\= NT, 
   WA #\= SA, 
   NT #\= SA, 
   NT #\= Q, 
   SA #\= Q, 
   SA #\= NSW, 
   SA #\= V, 
   Q #\= NSW,
   NSW #\= V,
   labeling([],[WA,NT,Q,SA,NSW,V]).

0 个答案:

没有答案