<prompt> Umepewa mzizi wa mti wa jozi wenye nodi n ambapo kila nodi kwenye mti ina sarafu node.val. Kuna sarafu n kwa jumla katika mti mzima.Katika hatua moja, tunaweza kuchagua nodi mbili zilizo karibu na kuhamisha sarafu moja kutoka nodi moja hadi nyingine. Uhamisho unaweza kuwa kutoka kwa mzazi kwenda kwa mtoto, au kutoka kwa mtoto kwenda kwa mzazi.Rudisha _idadi kiwango cha chini zaidi cha hatua zinazohitajika ili kufanya kila nodi iwe na sawa sarafu moja_.Mfano wa 1:Ingizo: mzizi 3,0,0Pato: 2Maelezo: Kutoka kwenye mzizi wa mti, tunahamisha sarafu moja kwa mtoto wake wa kushoto, na sarafu moja kwa mtoto wake wa kulia.Mfano wa 2:Ingizo: mzizi 0,3,0Pato: 3Maelezo: Kutoka kwa mtoto wa kushoto wa mzizi, tunasogeza sarafu mbili kwenye mzizi tukichukua hatua mbili. Kisha, tunahamisha sarafu moja kutoka kwenye mizizi ya mti hadi kwa mtoto sahihi.Vikwazo: Idadi ya nodi kwenye mti ni n. 1 n 100 0 Node.val n Jumla ya Node.val zote ni n.  <response>: def decode_permutations: str: n lenzi perm 0 n 1 next_sifuri, inayofuata_moja 0, n kwa c katika s: ikiwa c 0: permnext_zero next_one sifuri_ifuatayo 1 next_one - 1 kwingine: permnext_one next_zero next_one - 1 sifuri_ifuatayo 1 permnext_zero next_one ruhusa ya kurudi 