'N Wolkekrabbers -raaisel vereis die bepaling van die hoogtes van 'n rooster van geboue. Getalle aan die rande van die rooster dui die aantal wolkekrabbers aan wat uit daardie rigting sigbaar is. Hoër geboue blokkeer die uitsig van alle laer geboue agter hulle. Elke ry en kolom moet presies een gebou van elke hoogte hê.
Stappe
Stap 1. Ondersoek die afmetings van die raaisel en die aantal beskikbare gebouhoogtes
In sommige gevalle is dit gelyk en die hele rooster is vol wolkekrabbers. In ander kan daar 'n paar leë ruimtes of parke wees. Trek die lengte van die rye af van die aantal hoogtes om die aantal parke in elke ry te vind. In hierdie voorbeeld word gesê dat daar vier geboue hoogtes is. In die 5x5 rooster beteken dit een park in elke ry en kolom.
Stap 2. Kyk langs die rande
Die hoogste gebou sal al die ander in daardie ry of kolom blokkeer en kan dus nie langs 'n ander syfer as 1. geplaas word nie. As daar meerdere 1's in 'n ry is, moet almal behalwe een 'n park wees. Aangesien hierdie voorbeeld vier hoogtes in 'n 5x5 -rooster het, bevat elke ry en kolom slegs een park. Gebruik die + -simbool om selle aan te dui waar die hoogte nog onbekend is, maar nie 'n park kan wees nie. Die identifisering van die liggings van die parke is 'n belangrike stap in die rigting van die oplossing.
Stap 3. Soek enige ander plek wat 'n gebou moet bevat en merk ook die selle
As 'n gebou met 'n maksimum hoogte gevind word, moet daar minstens soveel ander geboue tussen dit en elke rand wees as die aantal geboue wat vanaf die rand sigbaar is.
Stap 4. Soek, indien moontlik, rye en kolomme waar die volgorde van die geboue bepaal kan word
As die aantal sigbare geboue gelyk is aan die totale aantal gebouhoogtes, moet dit in toenemende hoogte wees. As die ligging van alle parkvierkante in daardie ry of kolom ook bekend is, kan die ry volledig opgelos word.
Stap 5. Soek maniere om die volgorde van die ontbrekende elemente in gedeeltelik voltooide rye en kolomme te ontdek
Die tweede ry kan byvoorbeeld óf 4123 óf 4132 wees, maar slegs 4132 het drie geboue wat van regs sigbaar is. Daarom moet die regterkant hoogte 2 wees, aangesien u reeds weet dat dit nie leeg kan wees nie.
Stap 6. Probeer om ander hoër geboue om die rande te plaas
In die voorbeeld, aangesien die maksimum hoogte 4 is, kan 'n drie slegs op 'n rand geplaas word waar die aantal sigbare geboue 2 is (slegs hyself en 'n 4 op 'n paar ander plekke kan gesien word). Bo en regs is daar slegs een moontlikheid.
Stap 7. Gaan voort om te kyk hoe die nuwe inligting kan help om gedeeltelik bekende rye en kolomme op te los
Met die 3 en 4 geplaas, moet die boonste ry 3421 wees om drie geboue van regs sigbaar te hê en die eerste kolom moet 3412 wees om twee geboue van onder te sien. Oorweeg om rye en kolomme te merk waarvan die beperkings ten volle nagekom is. Dit sal nie altyd heeltemal opgelos word nie - die ligging van die 3 in die tweede ry is nog nie bekend nie, maar op die beskikbare ligging sal die linkerkant slegs 4 sien, terwyl die regterkant 234 sien, sodat die getalle gee nie meer inligting nie.
Stap 8. Soek hoogtes wat meestal geplaas is en gebruik die Latynse vierkantbeperking om die oorblywende geboue van daardie hoogte te plaas
In hierdie voorbeeld is vier van die vyf hoogte 2 -geboue gevind, so daar is net een plek vir die laaste een.
Stap 9. Soek die moontlike liggings vir die oorblywende leë parkruimtes
In die voorbeeld kan die vierde ry slegs twee geboue sigbaar van links, nie die vereiste 3 nie, as die eerste sel leeg is. Daarom kan die parkvierkante van beide die derde en vierde rye bepaal word.