
upperLimitTowers(7).         % maxim number of towers allowed
significantVillages([c,h]).    % list of villages where a tower is mandatory
map_size(24,24).             % numrows, numcols; the left upper corner of the map has coordinates (1,1)

% village(ident,row,col,size):  row,col of left upper corner, and size of the square
village(a,2,6,4).
village(b,2,18,3).
village(c,7,7,4).
village(d,10,2,2).
village(e,11,17,2).
village(f,13,8,4).
village(g,16,1,5).
village(h,20,12,2).
village(i,21,17,3).
village(j,23,4,2).


%% The output could look similar to this  (each "T" indicates a tower):
%%
%% Solution found with cost 5

%%     1.......10........20........30........40
%%
%%  1  ........................
%%  2  .....aaaa........bbb....
%%  3  .....aaaa........bbb....
%%  4  .....aaaa........bbb....
%%  5  .....aaaa...............
%%  6  ........................
%%  7  ......Tccc..............
%%  8  ......cccc..............
%%  9  ......cccc..............
%% 10  .dd...cccc..............
%% 11  .dd.............ee......
%% 12  ................ee......
%% 13  .......ffff.............
%% 14  .......ffff.............
%% 15  .......ffff.............
%% 16  gTggg..ffff.............
%% 17  ggggg...................
%% 18  ggggg...................
%% 19  ggggg...................
%% 20  ggggg......hh...........
%% 21  ...........hT...iTi.....
%% 22  ................iii.....
%% 23  ...jj...........iii.....
%% 24  ...jT...................
