1
0
This repository has been archived on 2025-03-06. You can view files and clone it, but cannot push or open issues or pull requests.
Jip J. Dekker fad1b07018 Squashed 'software/minizinc/' content from commit 4f10c8205
git-subtree-dir: software/minizinc
git-subtree-split: 4f10c82056ffcb1041d7ffef29d77a7eef92cf76
2021-06-16 14:06:46 +10:00

88 lines
1.9 KiB
MiniZinc

/***
!Test
expected:
- !Result
solution: !Solution
a:
- [0, 0, 0, 0, 0, 0, 0, 0]
- [0, 1, 0, 1, 0, 0, 0, 0]
- [0, 0, 0, 0, 0, 1, 2, 0]
- [0, 1, 0, 0, 0, 0, 0, 0]
- [0, 0, 0, 1, 0, 0, 0, 0]
- [0, 0, 0, 2, 0, 1, 2, 0]
- [0, 0, 0, 3, 0, 0, 0, 0]
- [0, 0, 0, 0, 0, 0, 0, 0]
col_sums: [2, 0, 4, 0, 2, 2]
row_sums: [2, 2, 1, 1, 3, 1]
- !Result
solution: !Solution
a:
- [0, 0, 0, 0, 0, 0, 0, 0]
- [0, 0, 0, 1, 2, 0, 0, 0]
- [0, 1, 0, 0, 0, 0, 1, 0]
- [0, 0, 0, 0, 0, 0, 2, 0]
- [0, 0, 0, 1, 0, 0, 0, 0]
- [0, 1, 0, 2, 0, 0, 1, 0]
- [0, 0, 0, 3, 0, 0, 0, 0]
- [0, 0, 0, 0, 0, 0, 0, 0]
col_sums: [2, 0, 4, 1, 0, 3]
row_sums: [2, 2, 1, 1, 3, 1]
- !Result
solution: !Solution
a:
- [0, 0, 0, 0, 0, 0, 0, 0]
- [0, 0, 0, 1, 0, 0, 1, 0]
- [0, 0, 0, 2, 0, 0, 2, 0]
- [0, 1, 0, 0, 0, 0, 0, 0]
- [0, 0, 0, 0, 0, 0, 1, 0]
- [0, 1, 0, 1, 0, 0, 2, 0]
- [0, 0, 0, 0, 0, 0, 3, 0]
- [0, 0, 0, 0, 0, 0, 0, 0]
col_sums: [2, 0, 3, 0, 0, 5]
row_sums: [2, 2, 1, 1, 3, 1]
- !Result
solution: !Solution
a:
- [0, 0, 0, 0, 0, 0, 0, 0]
- [0, 1, 0, 1, 0, 0, 0, 0]
- [0, 0, 0, 2, 0, 0, 1, 0]
- [0, 0, 0, 3, 0, 0, 0, 0]
- [0, 0, 0, 0, 0, 0, 1, 0]
- [0, 0, 0, 1, 2, 0, 2, 0]
- [0, 1, 0, 0, 0, 0, 0, 0]
- [0, 0, 0, 0, 0, 0, 0, 0]
col_sums: [2, 0, 4, 1, 0, 3]
row_sums: [2, 2, 1, 1, 3, 1]
***/
% Example battleships problem for battleships.mzn.
%
include "battleships.mzn.model";
n = 6;
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
|]
);
constraint a[2, 4] > 0;
constraint a[3, 7] > 0;
constraint a[6, 7] > 0;
row_sums = [2, 2, 1, 1, _, 1];
col_sums = [2, 0, _, _, _, _];
n_classes = 3;
class_sizes = [3, 2, 1];