<prompt> Kwa kuzingatia matriki ya m x n matriki na tarakimu k, rudisha _jumla ya juu zaidi ya mstatili katika mkusanyiko hivi kwamba jumla yake si kubwa kuliko_ k.Imehakikishwa kwamba kutakuwa na mstatili wenye jumla isiyo kubwa kuliko k.Mfano wa 1:Ingizo: matrix 1,0,1,0,-2,3, k 2Pato: 2Maelezo: Kwa sababu jumla ya mstatili wa bluu 0, 1, -2, 3 ni 2, na 2 ndio nambari ya juu isiyo kubwa kuliko k k 2 Mfano wa 2:Ingizo: matrix 2,2,-1, k 3Pato: 3Vikwazo: m matrix.length n matrixi.urefu 1 m, n 100 -100 matrixij 100 -105 k 105Fuata: Je, iwapo idadi ya safu mlalo ni kubwa zaidi kuliko idadi ya safu wima?  <response>: chatukutoka kwa vyombo vilivyopangwa ingiza SortedListdef maxSumSubmatrixmatrix, k: safu leni matrix cols lenmatrix0 max_sum kuelea-inf kwa l katika anuwai cols: jumla 0 safu kwa r katika saful, cols: kwa mimi katika safu safu: sumsi matrixir sorted_sums SortedList sorted_sums.ongeza0 curr_sum 0 kwa jumla kwa jumla: curr_sum jumla it sorted_sums.bisect_leftcurr_sum - k ikiwa ni ! lenjumla_zilizopangwa: max_sum maxmax_sum, curr_sum - sorted_sumsit sorted_sums.ongezacurr_sum rudisha max_summaelezo1. Anzisha vigeu ili kurudia juu ya jozi zote za safu wima zinazowezekana kushoto na kulia.2. Kwa kila jozi ya safu wima, hesabu jumla ya vipengele ndani ya safu wima kwa kila safu.3. Anzisha seti iliyopangwa k.m., weka katika C, TreeSet katika Java, SortedList katika Python, na safu katika JavaScript ili kuhifadhi hesabu za kiambishi awali.4. Rudia kupitia jumla ya hesabu, kusasisha jumla ya sasa na kupata kikomo cha chini cha currSum - k katika seti iliyopangwa.5. Ikiwa kiboreshaji hakielekezi mwisho, sasisha maxSum kwa kutumia jumla ya sasa ukiondoa thamani iliyoelekezwa na kiboreshaji.6. Ingiza jumla ya sasa kwenye seti iliyopangwa.7. Baada ya marudio yote kufanywa, rudisha maxSum. 