Kuidas lahendada pilvelõhkujate mõistatust

Pilvelõhkujate mõistatus nõuab hoonete ruudustiku kõrguste määramist. Ruudustiku servades olevad numbrid näitavad sellest suunast nähtavate pilvelõhkujate arvu. Kõrgemad hooned blokeerivad vaate kõikidele madalamatele hoonetele nende taga. Igas reas ja veerus peab olema täpselt üks iga kõrgusega hoone.

1
Uurige pusle mõõtmeid ja saadaolevate hoonekõrguste arvu. Mõnel juhul on need võrdsed ja kogu ruudustik täidetakse pilvelõhkujatega. Teistes kohtades võivad olla tühjad kohad või pargid. Iga rea ​​parkide arvu leidmiseks lahutage kõrguste arvust ridade pikkus. Selles näites on öeldud, et hoonete kõrgusi on neli. 5×5 ruudustikus tähendab see ühte parki igas reas ja veerus.

2
Vaadake mööda servi. Kõrgeim hoone blokeerib kõik muu selles reas või veerus ja seetõttu ei saa seda paigutada ühegi teise numbri kõrvale peale 1. Kui reas on mitu 1-t, peavad kõik peale ühe olema park. Kuna sellel näitel on 5×5 ruudustikus neli kõrgust, sisaldab iga rida ja veerg ainult ühte parki. Kasutage sümbolit +, et näidata lahtreid, mille kõrgus on veel teadmata, kuid ei saa olla park. Parkide asukohtade väljaselgitamine on märkimisväärne samm lahenduse suunas.

3
Otsige üles kõik muud asukohad, mis peavad sisaldama hoonet, ja märkige samamoodi need lahtrid. Maksimaalse kõrgusega hoone leidmisel peab selle ja iga serva vahele jääma vähemalt sama palju teisi hooneid, kui palju sellest servast paistab.

4
Võimalusel otsi üles read ja veerud, kus saab määrata hoonete järjestuse. Kui nähtavate hoonete arv võrdub hoonete kõrguste koguarvuga, peavad need olema kasvavas kõrguses. Kui on teada ka kõigi pargiväljakute asukoht selles reas või veerus, siis saab selle rea täielikult lahendada.

5
Otsige võimalusi, kuidas leida puuduvate elementide järjekord osaliselt täidetud ridades ja veergudes. Näiteks teine ​​rida võiks olla kas 4123 või 4132, kuid ainult 4132-st on paremalt näha kolm hoonet. Seetõttu peab parem serv olema kõrgusel 2, sest sa juba tead, et see ei saa olla tühi.

6
Proovige asetada servade ümber teisi kõrgemaid hooneid. Näites, kuna maksimaalne kõrgus on 4, saab kolme asetada ainult servale, kus nähtavate hoonete arv on 2 (näha on ainult iseennast ja mõnes teises kohas 4). Üleval ja paremal on ainult üks võimalus.

7
Vaadake, kuidas uus teave aitab lahendada osaliselt teadaolevaid ridu ja veerge. Kui 3 ja 4 on paigutatud, peab ülemine rida olema 3421, et paremalt oleks näha kolm hoonet, ja esimene veerg peab olema 3412, et alt oleks näha kaks hoonet. Kaaluge ridade ja veergude märgistamist, mille piirangud on täielikult täidetud. Need ei ole alati täielikult lahendatud – teise rea 3 asukoht pole veel teada, kuid kummaski saadaolevas asukohas on vasakul pool ainult 4, paremal pool aga 234, nii et need numbrid ei anna rohkem teavet.

8
Otsige üles kõrgused, mis on enamasti paigutatud, ja kasutage ülejäänud selle kõrgusega hoonete paigutamiseks ladina ruudu piirangut. Selles näites on leitud viiest 2 kõrgusest hoonest neli, seega on viimase jaoks ainult üks koht.

9
Leidke järelejäänud tühjade pargikohtade võimalikud asukohad. Näites võib neljandas reas olla vasakult nähtaval ainult kaks hoonet, mitte vajalik 3, kui esimene lahter on tühi. Seega saab määrata nii kolmanda kui ka neljanda rea ​​pargiväljakud.

10
Ülejäänud lahtrid saab lahendada, kui arvestada altpoolt nähtavate hoonete arvu.