38 lines
900 B
MiniZinc
38 lines
900 B
MiniZinc
% RUNS ON mzn20_fd
|
|
% RUNS ON mzn-fzn_fd
|
|
% RUNS ON mzn20_mip
|
|
% 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
|
|
| 0, _, _, _, _, _, _, _, _, _, _, 0
|
|
| 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
|
|
|]
|
|
);
|
|
|
|
constraint a[1, 1] > 0;
|
|
constraint a[2, 3] > 0;
|
|
constraint a[7, 6] > 0;
|
|
|
|
row_sums = [3, 2, 2, 1, 4, 0, 3, 1, 3, 1];
|
|
|
|
col_sums = [3, 1, 4, 3, 2, 2, 1, 1, 2, 1];
|
|
|
|
n_classes = 4;
|
|
|
|
class_sizes = [4, 3, 2, 1];
|
|
|