HASHI (bruggen bouwen)


download HASHI programma

HASHI (Hashiwokakero), ook wel genoemd Bruggen Bouwen, is een Japanse logistieke puzzel.
Hieronder staat een voorbeeld met links een puzzel en rechts de oplossing.

De cirkeltjes stellen eilanden voor die met bruggen moeten worden verbonden.
Het cijfer binnen een eilandje geeft het aantal verbonden bruggen aan.
Twee eilanden mogen maximaal met twee bruggen zijn verbonden.
De bruggen mogen elkaar niet kruisen.
De oplossing is bereikt als alle eilanden met elkar zijn verbonden.

Help informatie bij het programma

(verkleind beeld)



menu knoppen

open
Opent een op disk opgeslagen puzzel.

save
Bewaart een puzzel op disk.
De opgegeven naam wordt automatisch voorafgegaan door "HASHI!_" om het bestand herkenbaar te maken.

new
Selecteer "new" om eilanden toe te voegen:
een linker-muisklik voegt een eiland toe met het cijfer 1.
Een linker-muisklik verhoogt dit cijfer, een rechter-muisklik verlaagt dit cijfer.
Het eiland verdwijnt bij cijfer 0.

play
Druk "play" in om te zoeken naar oplossingen, bruggen toevoegen of verwijderen.
Brug toevoegen:
linker-muisknop indrukken op eiland en vasthouden.
Muiswijzer bewegen in richting van brug.
Als brug verschijnt, dan muisknop loslaten.
Zo kan ook de tweede brug worden toegevoegd.
Een linker-muisklik op een enkele brug voegt ook een brug toe.
Een rechter-muisklik op een brug haalt die brug weg.

De help knoppen
Die verschijnen als menuknop "play" is ingedrukt.

warnings (waarschuwingen)
Als deze knop is ingedrukt dan waarschuwt het programma voor fouten
    1. een eiland is niet meer in staat om alle vereiste bruggen te bouwen (eiland in rood aangegeven)
    2. er is een geïsoleerde groep eilanden onstaan
Hieronder staan voorbeelden van deze waarschuwingen:

(1) kan bruggen niet bouwen(2) geïsoleerde groep eilanden


Hints (aanwijzingen)
Het programma geeft een brug aan die op grond van logisch redeneren niet gemist kan worden.
Hieronder staan voorbeelden:
dubbele bruggen



4 in de hoek, 6 op een zijde en 8 in het midden.

Enkele bruggen



3 in een hoek, 5 op een zijde en 7 in het midden.

solution (oplossing)
Bij zeer moeilijke HASHI puzzels volstaan de aanwijzingen niet.
Dan kan het programma ook een complete oplossing bieden.
Omdat dit een zeer tijdrovend proces is van proberen, is het aantal eilanden beperkt.
Gehele puzzels kunnen meestal niet worden opgelost. Dat zou uren duren.
De werkwijze is dan:
Alle hints toevoegen en pas als geen hints meer gegeven worden de "solution" knop indrukken.
Nadat een oplossing is gerapporteerd kan de spatiebalk worden ingedrukt
om naar nog meer oplossingen te zoeken.
Een goede HASHI puzzel heeft maar één unieke oplossing.

game size (afmetingen van de puzzel)

Deze knop kan bediend worden als de menuknop "new" is ingedrukt.
Druk linkermuisknop in op de knop en beweeg omhoog of omlaag om de grootte van het spel te wijzigen.

clear (wissen)
Tijdens menu:new: wis de eilanden en de bruggen
Tijdens menu:play: wis de bruggen

Veel plezier !

Hints : algemeen

De hierboven beschreven hints zijn voorbeelden van één algemene regel.

Maar eerst dit:
Twee eilanden met allebei cijfer 1 kunnen niet verbonden zijn omdat dit een geïsoleerde groep oplevert.
Om dezelfde reden kunnen twee eilanden met allebei cijfer 2 maar hoogstens met één brug zijn verbonden.



Nu de algemene hint regel.
Beschouw een eiland met cijfer B (het aantal te verbinden bruggen).
Een eiland heeft maximaal vier buren, die moeten samen die bruggen mogelijk maken.
Noem de richtingen van die buren 1..4 (rechts,boven,links,onder).
Noem ai het aantal te leveren bruggen van buur i.
Stel A = a1+a2+a3+a4



Het geval A < B levert een waarschuwing op: eiland kan bruggen niet plaatsen.

Nu stellen we de vraag:
"kunnen we de bruggen in richting 1 vergeten?"
Dat is het geval als
    a2+a3+a4>=B...of
    B <=A-a1...of
    A-B-a1>=0
Voor het algemene geval van richting i:
    A - B - ai = -1 : 1 brug mist
    A - B - ai = -2 : er missen 2 bruggen
Als pi het aantal te plaatsen bruggen is in richting i dan:
    -pi = A - B - ai, dus
    pi = (B - A) + (ai - bi)
als bi het aantal bruggen is dat reeds geplaatst is in richting i.
Negatieve waarden van p worden vervangen door 0.



In het voorbeeld hierboven:
    p1=p2=(5-6)+1 = 0.
    p3=p4=(5-6)+2 = 1.
De hints zijn in blauw aangegeven.