<prompt> Kwa kuzingatia safu kamili ya nambari chanya nums na lengo chanya kamili, rudisha _urefu wa chini wa a_ _subarray_ _ambayo jumla yake ni kubwa kuliko au sawa na_ lengo. Ikiwa hakuna safu ndogo kama hiyo, rudisha 0 badala yake.Mfano wa 1:Ingizo: lengwa 7, nambari 2,3,1,2,4,3Pato: 2Maelezo: Safu ndogo 4,3 ina urefu mdogo chini ya kizuizi cha tatizo.Mfano wa 2:Ingizo: lengo 4, nambari 1,4,4Pato: 1Mfano wa 3:Ingizo: lengwa 11, nums 1,1,1,1,1,1,1,1Pato: 0Vikwazo: 1 lengo 109 1 nums.length 105 1 numsi 104Fuatilia: Ikiwa umegundua suluhu ya On, jaribu kusimba suluhisho lingine ambalo uchangamano wake wa saa ni On login.  <response>: chatudef minSubArrayLenlengo: int, nums: Listint - int: kushoto, cur_sum, min_len 0, 0, kueleainf kwa masafa ya kulia lennambari: cur_sum numskulia wakati cur_sum lengo: min_len minmin_len, kulia - kushoto 1 cur_sum - numskushoto kushoto 1 rudisha min_len ikiwa min_len ! floatinf vinginevyo 0maelezoKanuni huanzisha viashiria kushoto na kulia, jumla ya cur_sum, na urefu wa chini zaidi min_len. Kielekezi cha kulia hupitia nambari. Wakati wa kuvuka, sasisha cur_sum kwa kuongeza numskulia. Kisha angalia ikiwa cur_sum ni kubwa kuliko au sawa na lengo. Ikiwa ndivyo, sasisha min_len kwa kulinganisha min_len na urefu wa safu ndogo ya sasa kulia - kushoto 1. Kisha usasishe cur_sum kwa kutoa numskushoto na uongeze kielekezi cha kushoto. Endelea mchakato huu hadi mwisho wa nambari ufikiwe. Ikiwa min_len bado iko katika thamani yake ya juu mwishoni, rudisha 0. Vinginevyo, rudisha min_len.Kanuni hii hutumia mbinu ya kutelezesha ya dirisha ili kurudia kupitia safu huku ikidumisha hesabu za safu ndogo zaidi ya au sawa na lengwa. 