this repo has no description
1% RUNS ON mzn20_fd
2% RUNS ON mzn-fzn_fd
3include "count.mzn";
4
5%-----------------------------------------------------------------------------%
6% count
7%-----------------------------------------------------------------------------%
8var -100..100: count_vi1;
9var -100..100: count_vi2;
10var 8..20: count_vi3;
11array[1..8] of var -100..100: count_avi1 = [7, 8, 8, 9, 9, 9, _, _];
12array[1..8] of var -100..100: count_avi2 = [7, 8, 9, 3, 0, 0, 9, 9];
13array[1..8] of var -100..100: count_avi3 = [7, 8, 8, 9, 9, 9, 0, 8];
14array[1..8] of var -100..100: count_avi4;
15
16constraint count(count_avi1, 8, 4); % 1st arg unfixed -> [...]
17constraint count(count_avi2, count_vi1, 3); % 2nd arg unfixed -> 9
18constraint count(count_avi3, 8, count_vi2); % 3rd arg unfixed -> 3
19constraint count(count_avi4, 0, count_vi3); % 1st arg unfixed -> [0,0,...]
20
21solve satisfy;
22
23output [
24 "count_avi1 = array1d(1..8, ", show(count_avi1), ");\n",
25 "count_avi2 = array1d(1..8, ", show(count_avi2), ");\n",
26 "count_avi3 = array1d(1..8, ", show(count_avi3), ");\n",
27 "count_avi4 = array1d(1..8, ", show(count_avi4), ");\n",
28 "count_vi1 = ", show(count_vi1), ";\n",
29 "count_vi2 = ", show(count_vi2), ";\n",
30 "count_vi3 = ", show(count_vi3), ";\n"
31];