<prompt> Safu ni mraba ikiwa jumla ya kila jozi ya vipengele vilivyo karibu ni mraba kamili.Kwa kuzingatia idadi kamili ya safu, rudisha _idadi ya ruhusa za_ idadi _ambazo ni mraba_.Ruhusa mbili perm1 na perm2 ni tofauti ikiwa kuna faharasa i hivi kwamba perm1i ! perm2i.Mfano wa 1:Ingizo: nambari 1,17,8Pato: 2Maelezo: 1,8,17 na 17,8,1 ndizo vibali halali.Mfano wa 2:Ingizo: nambari 2,2,2Pato: 1Vikwazo: 1 nums.length 12 0 numsi 109  <response>: kutoka kwa makusanyo kuagiza Counterdef numSquarefulPermsnambari: def is_squaren: return intn 0.5 2 n def dfsidx: ikiwa idx lennambari: kurudi 1 hesabu 0 kwa ufunguo katika counter.keys: ikiwa counterkey na idx 0 au is_squarenumsidx - 1 key: counterkey - 1 numsidx ufunguo count dfsidx 1 counterkey 1 hesabu ya kurudi key_set, counter setnambari, Counternambari rudisha dfs0 