git-subtree-dir: software/minizinc git-subtree-split: 4f10c82056ffcb1041d7ffef29d77a7eef92cf76
56 lines
1.5 KiB
MiniZinc
56 lines
1.5 KiB
MiniZinc
/***
|
|
!Test
|
|
expected:
|
|
- !Result
|
|
solution: !Solution
|
|
a:
|
|
- [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
- [0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0]
|
|
- [0, 2, 0, 2, 0, 2, 0, 1, 0, 0, 0, 0]
|
|
- [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
- [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
- [0, 0, 0, 0, 0, 0, 1, 2, 3, 0, 1, 0]
|
|
- [0, 1, 2, 3, 4, 0, 0, 0, 0, 0, 0, 0]
|
|
- [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
- [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
- [0, 0, 1, 2, 3, 0, 1, 0, 0, 0, 0, 0]
|
|
- [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
- [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
col_sums: [3, 2, 4, 2, 2, 2, 2, 1, 1, 1]
|
|
row_sums: [4, 4, 0, 0, 4, 4, 0, 0, 4, 0]
|
|
***/
|
|
|
|
% Example battleships problem for battleships.mzn.
|
|
%
|
|
include "battleships.mzn.model";
|
|
|
|
n = 10;
|
|
|
|
a = array2d(ROW, COL,
|
|
[| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
|
| 0, _, _, _, _, _, _, _, _, _, _, 0
|
|
| 0, _, _, _, _, _, _, _, _, _, _, 0
|
|
| 0, _, _, _, _, _, _, _, _, _, _, 0
|
|
| 0, _, _, _, _, _, _, _, _, _, _, 0
|
|
| 0, _, _, _, _, _, _, _, _, _, _, 0
|
|
| 0, _, _, _, _, _, _, _, _, _, _, 0
|
|
| 0, _, _, _, _, _, _, _, _, _, _, 0
|
|
| 0, _, _, _, _, _, _, _, _, _, _, 0
|
|
| 0, _, _, _, _, _, _, _, _, _, _, 0
|
|
| 0, _, _, _, _, _, _, _, _, _, _, 0
|
|
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
|
|]
|
|
);
|
|
|
|
constraint a[3, 8] > 0;
|
|
constraint a[7, 5] > 0;
|
|
|
|
row_sums = [4, 4, 0, 0, 4, 4, 0, 0, 4, 0];
|
|
|
|
col_sums = [3, 2, 4, 2, 2, 2, 2, 1, 1, 1];
|
|
|
|
n_classes = 4;
|
|
|
|
class_sizes = [4, 3, 2, 1];
|
|
|