<prompt> Kwa kuzingatia safu ya herufi chars, ikandamize kwa kutumia algoriti ifuatayo:Anza na mfuatano tupu s. Kwa kila kundi la vibambo vinavyorudiarudia mfululizo katika chars: Ikiwa urefu wa kikundi ni 1, ongeza herufi kwa s. Vinginevyo, ongeza herufi ikifuatiwa na urefu wa kikundi.Mfuatano uliobanwa s haufai kurejeshwa tofauti, lakini badala yake, uhifadhiwe katika safu ya herufi chars. Kumbuka kwamba urefu wa kikundi ambao ni 10 au zaidi utagawanywa katika herufi nyingi katika char.Baada ya kumaliza kurekebisha safu ya ingizo, rudisha _urefu mpya wa safu_.Lazima uandike algoriti inayotumia nafasi ya ziada isiyobadilika.Mfano wa 1:Ingizo: herufi a , a, b , b , c , c , c Pato: Rudisha 6, na herufi 6 za kwanza za safu ya ingizo zinapaswa kuwa: a , 2 , b , 2 , c , 3 Maelezo: Vikundi ni aa, bb, na ccc. Hii inabana kwa a2b2c3.Mfano wa 2:Ingizo: herufi aPato: Rudisha 1, na herufi ya kwanza ya safu ya ingizo inapaswa kuwa: aMaelezo: Kundi pekee ni a , ambalo linabaki bila kubanwa kwa vile ni herufi moja.Mfano wa 3:Ingizo: herufi a, b, b, b, b, b, b, b, b, b, b, b, b, b, b, b, b, bPato: Rudisha 4, na herufi 4 za kwanza za safu ya ingizo zinapaswa kuwa: a , b , 1 , 2 .Maelezo: Vikundi ni a na bbb. Hii inabana kwa ab12.Vikwazo: 1 chars.length 2000 charsi ni herufi ndogo ya Kiingereza, herufi kubwa ya Kiingereza, tarakimu, au ishara.  <response>: chatudef compresschars: index, i 0, 0 wakati mimi lenchars: hesabu 1 wakati mimi hesabu lenchars na charsi charsi count: hesabu 1 charsindex charsi index 1 ikiwa hesabu 1: count_str strhesabu kwa c katika count_str: charsindex c index 1 i hesabu kurudi indexmaelezoKanuni hii inarudia kupitia safu ya ingizo chars, kwa kila herufi, huhesabu idadi ya matukio mfululizo kwa kutumia count variable ya herufi hiyo. Kisha, algorithm inachukua nafasi ya herufi za sasa na fomu iliyoshinikwa tabia yenyewe, ikifuatiwa na hesabu ikiwa ni kubwa kuliko 1. index hufuatilia nafasi katika safu ya ingizo chars iliyorekebishwa.Mwishoni mwa kila marudio, thamani ya i inaongezwa kwa count ili kuhamia kwa herufi ya kipekee inayofuata katika safu. Hatimaye, algoriti inarudisha index, ambayo ni urefu mpya wa safu.Utekelezaji huu hutumia tu nafasi ya ziada ya mara kwa mara kwa kurekebisha safu ya ingizo yenyewe na kutumia anuwai kadhaa rahisi. 