<prompt> Unataka kujenga n majengo mapya katika jiji. Majengo mapya yatajengwa kwa mstari na yana lebo kutoka 1 hadi n.Walakini, kuna vizuizi vya jiji kwa urefu wa majengo mapya: Urefu wa kila jengo lazima uwe nambari kamili isiyo hasi. Urefu wa jengo la kwanza lazima uwe 0. Tofauti ya urefu kati ya majengo yoyote mawili yaliyo karibu haiwezi kuzidi 1.Zaidi ya hayo, kuna vikwazo vya jiji juu ya urefu wa juu wa majengo maalum. Vizuizi hivi vinatolewa kama safu kamili ya 2D vikwazo ambapo vizuizii idi, maxHeighti huonyesha kuwa jengo idi lazima liwe na urefu chini kuliko au sawa na maxHeighti.Imehakikishwa kuwa kila jengo litaonekana mara moja zaidi katika vikwazo, na jengo 1 halitakuwa katika vizuizi.Rudisha _urefu unaowezekana wa jengo refu zaidi_.Mfano wa 1:Ingizo: n 5, vikwazo 2,1,4,1Pato: 2Maelezo: Eneo la kijani kibichi kwenye picha linaonyesha urefu wa juu unaoruhusiwa kwa kila jengo.Tunaweza kujenga majengo yenye urefu 0,1,2,1,2, na jengo refu zaidi lina urefu wa 2.Mfano wa 2:Ingizo: n 6, vikwazo Pato: 5Maelezo: Eneo la kijani kibichi kwenye picha linaonyesha urefu wa juu unaoruhusiwa kwa kila jengo.Tunaweza kujenga majengo yenye urefu 0,1,2,3,4,5, na jengo refu zaidi lina urefu wa 5.Mfano wa 3:Ingizo: n 10, vikwazo 5,3,2,5,7,4,10,3Pato: 5Maelezo: Eneo la kijani kibichi kwenye picha linaonyesha urefu wa juu unaoruhusiwa kwa kila jengo.Tunaweza kujenga majengo yenye urefu 0,1,2,3,3,4,4,5,4,3, na jengo refu zaidi lina urefu wa 5.Vikwazo: 2 n 109 0 vikwazo.length minn - 1, 105 2 idi n idi ni kipekee. 0 maxHeighti 109  <response>: kutoka kwa makusanyo leta defaultdictdef dfsnodi, alitembelea, grafu, kikundi: ikitembelewanodi: kurudi alitembeleanodi 1 kikundi.ongezanodi kwa jirani kwenye graphnodi: dfsjirani, alitembelea, grafu, kikundidef minimumHammingDistancechanzo, lengo, Ubadilishanaji unaoruhusiwa: n lenchanzo grafu defaultdictorodha kwa a, b katika Ubadilishaji unaoruhusiwa: grafua.ongezab grafub.ongezaa res 0 alitembelea 0 n kwa mimi katika safun: kama haijatembelewai: kikundi dfsi, alitembelea, grafu, kikundi count defaultdictint kwa nodi katika kikundi: countsourcenodi 1 kwa nodi katika kikundi: ikiwa counttargetnode 0: res 1 counttargetnodi - 1 kurudi n - res 