“Небоскребы” 5х5 #3 трудный


var p = new(Skyscrapers); customize(p); p.uis.puzzle[10] = "Небоскребы"; p.uic.canvas = "#545454"; p.uic.infoPanel = "#fafafa"; p.uic.label = "#fafafa"; p.run ("puzzle");

Перед вами вид сверху на городской квартал. В каждой клетке стоит “небоскреб” высотой, равной числу в этой клетке. Числа с боков сетки означают количество “небоскребов”, видимых из соответствующей строки или столбца, если смотреть от этого числа.

Задача - заполнить сетку числами так, чтобы в каждой строке и в каждом столбце каждое число использовалось лишь единожды.