<prompt> Kwa kuzingatia mkusanyiko kamili nums, rudisha true _ikiwa unaweza kugawa safu katika vikundi viwili vidogo hivi kwamba jumla ya vipengele katika vikundi vidogo viwili ni sawa au_ false _vinginevyo_.Mfano wa 1:Ingizo: nambari 1,5,11,5Pato: kweliMaelezo: Safu inaweza kugawanywa kama 1, 5, 5 na 11.Mfano wa 2:Ingizo: nambari 1,2,3,5Pato: si kweliMaelezo: Safu haiwezi kugawanywa katika vikundi vidogo vya jumla vilivyo sawa.Vikwazo: 1 nums.length 200 1 numsi 100  <response>: chatudef canPatitionnambari: jumla_jumla jumla idadi ikiwa jumla_jumla 2 ! 0: kurudi Uongo lengo jumla_jumla 2 dp Si kweli lengo 1 dp0 Kweli kwa nambari kwa nambari: kwa i katika anuwai lengo, nambari - 1, -1: dpi dpi au dpi - num rudisha dplengomaelezoKanuni hiyo inatumia Upangaji Nguvu ili kutatua tatizo la kugawa. Ili kubaini ikiwa safu inaweza kugawanywa katika vikundi viwili vidogo vilivyo na jumla sawa, kwanza tafuta jumla ya jumla ya safu. Ikiwa jumla ni isiyo ya kawaida, haiwezekani kuigawanya katika vikundi vidogo viwili sawa, kwa hivyo rudisha sivyo. Ikiwa jumla ni sawa, tafuta jumla inayolengwa kwa kugawanya jumla na 2.Wazo kuu ni kupata ikiwa kuna sehemu ndogo ambayo jumla yake ni sawa na jumla inayolengwa. Unda safu ya boolean dp, ambapo dpi inawakilisha ikiwa kuna kikundi kidogo kilicho na sum i. Anzisha dp0 hadi kweli, kwa kuwa jumla ya 0 inaweza kupatikana kwa kitengo kidogo tupu.Rudia kupitia kila nambari katika safu, na kwa kila nambari, rudia kupitia safu ya dp kwenda nyuma kuanzia jumla inayolengwa. Sasisha dpi kuwa kweli ikiwa dpi - num ni kweli, ikimaanisha kuwa sehemu ndogo iliyo na sum i - num inawezekana, na kuongeza nambari ya sasa ya matokeo katika kitengo kidogo na sum i.Mwishowe, ikiwa dptarget ni kweli, inamaanisha kuna kikundi kidogo katika safu chenye jumla sawa na lengo, kwa hivyo safu inaweza kugawanywa katika vikundi viwili vidogo sawa. Vinginevyo, haiwezi kugawanywa. 