Download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
/*
 
  Magic Hexagon in ECLiPSe.
 
  CSPLib problem 23: Magic Hexagon
  http://www.cse.unsw.edu.au/~tw/csplib/prob/prob023/
 
  Compare with the following models:
 
 
  Model created by Hakan Kjellerstrand, hakank@bonetmail.com
  See also my ECLiPSe page: http://www.hakank.org/eclipse/
 
*/
 
:-lib(ic).
%:-lib(ic_global).
%:-lib(ic_search).
%:-lib(branch_and_bound).
%:-lib(listut).
%:-lib(propia).
 
 
go :-
        LD = [A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S],
        LD :: 1..19,
 
        alldifferent(LD),
 
        A + B + C #=  38,
        D + E + F + G #=  38,
        H + I + J + K + L #=  38,
        M + N + O + P #=  38,
        Q + R + S #=  38,
        A + D + H #=  38,
        B + E + I + M #=  38,
        C + F + J + N + Q #=  38,
        G + K + O + R #=  38,
        L + P + S #=  38,
        C + G + L #=  38,
        B + F + K + P #=  38,
        A + E + J + O + S #=  38,
        D + I + N + R #=  38,
        H + M + Q #=  38,
         
        A #< C,
        A #< H,
        A #< L,
        A #< Q,
        A #< S,
        C #< H,
         
        labeling(LD),
 
        write(LD),nl.