46 lines
2.2 KiB
MiniZinc
46 lines
2.2 KiB
MiniZinc
array [1..9] of var 0..1: t;
|
|
array [1..27] of var 0..1: x :: output_array([1..9, 1..3]);
|
|
constraint int_eq(t[2], x[6]);
|
|
constraint int_eq(x[24], 0);
|
|
constraint int_le(x[1], t[1]);
|
|
constraint int_le(x[4], t[2]);
|
|
constraint int_le(x[7], t[3]);
|
|
constraint int_le(x[10], t[4]);
|
|
constraint int_le(x[13], t[5]);
|
|
constraint int_le(x[16], t[6]);
|
|
constraint int_le(x[19], t[7]);
|
|
constraint int_le(x[22], t[8]);
|
|
constraint int_le(x[25], t[9]);
|
|
constraint int_lin_eq([1, 1], [t[1], t[4]], 1);
|
|
constraint int_lin_eq([1, 1], [t[3], t[6]], 1);
|
|
constraint int_lin_eq([1, 1], [t[7], x[1]], 1);
|
|
constraint int_lin_eq([1, 1, 1], [x[1], x[2], x[3]], 1);
|
|
constraint int_lin_eq([1, 1, 1], [x[4], x[5], x[6]], 1);
|
|
constraint int_lin_eq([1, 1, 1], [x[7], x[8], x[9]], 1);
|
|
constraint int_lin_eq([1, 1, 1], [x[10], x[11], x[12]], 1);
|
|
constraint int_lin_eq([1, 1, 1], [x[13], x[14], x[15]], 1);
|
|
constraint int_lin_eq([1, 1, 1], [x[16], x[17], x[18]], 1);
|
|
constraint int_lin_eq([1, 1, 1], [x[19], x[20], x[21]], 1);
|
|
constraint int_lin_eq([1, 1, 1], [x[22], x[23], x[24]], 1);
|
|
constraint int_lin_eq([1, 1, 1], [x[25], x[26], x[27]], 1);
|
|
constraint int_lin_eq([1, -1, -1, -1, -1, -1], [t[1], x[1], x[7], x[13], x[19], x[25]], 0);
|
|
constraint int_lin_eq([1, 1, 1, 1, 1, 1, 1, 1, 1], [x[1], x[4], x[7], x[10], x[13], x[16], x[19], x[22], x[25]], 1);
|
|
constraint int_lin_le([1, 1], [t[1], x[2]], 1);
|
|
constraint int_lin_le([1, 1], [t[2], x[5]], 1);
|
|
constraint int_lin_le([1, 1], [t[3], x[8]], 1);
|
|
constraint int_lin_le([1, 1], [t[4], x[11]], 1);
|
|
constraint int_lin_le([1, 1], [t[5], x[14]], 1);
|
|
constraint int_lin_le([1, 1], [t[6], x[17]], 1);
|
|
constraint int_lin_le([1, 1], [t[7], x[20]], 1);
|
|
constraint int_lin_le([1, 1], [t[8], x[23]], 1);
|
|
constraint int_lin_le([1, 1], [t[9], x[26]], 1);
|
|
constraint int_lin_le([-2, 1, 1], [t[3], t[5], x[1]], 0);
|
|
constraint int_lin_le([-2, 1, 1], [t[8], x[23], x[27]], 1);
|
|
constraint int_lin_le([-1, -1, 1], [t[2], t[4], t[5]], 0);
|
|
constraint int_lin_le([-1, 2, -1], [t[3], t[9], x[26]], 0);
|
|
constraint int_lin_le([1, -2, 1], [t[3], t[9], x[26]], 1);
|
|
constraint int_lin_le([1, -1, -1], [t[3], t[5], x[1]], 0);
|
|
constraint int_lin_le([1, 1, -2], [t[2], t[4], t[5]], 0);
|
|
constraint int_lin_le([2, -1, -1], [t[8], x[23], x[27]], 0);
|
|
solve satisfy;
|