J160 – Les beaux navires [*** à la main]
Problème proposé par Raymond Bloch
Vous avez trois armadas à installer successivement sur un champ de bataille navale, un carré 10x10 de 100 cases unitaires. Chaque navire est un rectangle identifié par sa largeur l et sa longueur L : il occupe l x L cases unitaires et peut être en contact avec le bord de la grille 10x10, mais deux navires ne peuvent pas se toucher, même par un coin.
Pour chacun des trois cas, dessinez la grille contenant tous les navires, ou prouvez qu’il est impossible de les placer dans la grille.
1- Deux 1x4, quatre 1x3, six 1x2, quatre 1x1, et deux 2x2.
2- Deux 1x4, quatre 1x3, six 1x2, six 1x1 et un 2x2.
3- Deux 1x4, quatre 1x3, six 1x2, et huit 1x1.
Solution proposée par Daniel Collignon
On considère le tronc constitué de 16 navires commun aux trois configurations retenues à savoir : 2*(4,1), 4*(3,1),6*(2,1) et 4*(1,1) et on cherche l'agencement de ces navires qui laisse une zone "libre" Z qui
contient le plus grand nombre possible de cases adjacentes libres afin de pouvoir y placer les cases noires des autres navires : 1 ou 2 fois (2,2),4 fois (1,1).
Cet agencement optimal consiste à maximiser les chevauchements des cases blanches qui entourent les navires. Ceci entraine des lignes ou des colonnes remplies avec 1(4,1) + 1(3,1) + (1,1) etc...
On arrive au mieux à Z qui a la forme d’une sorte de botte de 9 cases faite d’un rectangle (2*4) + 1 case.
Elle peut se présenter ainsi:
A noter que la position de la botte dans la grille n'est pas unique.
On vérifie aisément que dans botte on peut caser 1*(2,2) et 2*(1,1) mais pas les deux autres configurations de Q1 et de Q3.
Conclusion :
1) aucune solution trouvée pour les grilles 1 et 3.
2) grille n° 2 :les bateaux sont représentés par des cases noires.