<prompt> Kwa kuzingatia mfuatano wa ingizo s na mchoro p, tekeleza ulinganishaji wa usemi wa kawaida na usaidizi wa . na ambapo: . Inalingana na mhusika yeyote Inalingana na sufuri au zaidi ya kipengele kilichotangulia.Ulinganishaji unapaswa kufunika mfuatano wa mzima wa ingizo sio sehemu.Mfano wa 1:Ingizo: s aa, p aPato: si kweliMaelezo: a hailingani na mfuatano mzima aa.Mfano wa 2:Ingizo: s aa, p a Pato: kweliMaelezo: inamaanisha sufuri au zaidi ya kipengele kilichotangulia, a. Kwa hivyo, kwa kurudia a mara moja, inakuwa aa.Mfano wa 3:Ingizo: s ab , p . Pato: kweliMaelezo: . maana yake ni sifuri au zaidi ya herufi yoyote . .Vikwazo: 1 s.urefu 20 1 p.length 20 s ina herufi ndogo za Kiingereza pekee. p ina herufi ndogo za Kiingereza pekee, ., na . Imehakikishwa kwa kila mwonekano wa herufi , kutakuwa na herufi halali ya awali ili kulingana.  <response>: chatudef is_matchs: str, p: str - bool: m, n lenzi, lenzip dp Siyo n 1 kwa _ masafam 1 dp00 Kweli kwa j katika safu1, n 1: ikiwa pj - 1 na dp0j - 2: dp0j Kweli kwa i katika masafa 1, m 1: kwa j katika safu1, n 1: ikiwa pj - 1 si - 1 au pj - 1 .: dpij dpi - 1j - 1 elif pj - 1 : dpij dpij - 2 au dpi - 1j na si - 1 pj - 2 au pj - 2 . rudisha dpmnmaelezoTunatumia Dynamic Programming kutatua tatizo hili. Tunahifadhi matokeo ya kati katika safu ya boolean ya 2D dp, ambapo dpij inaonyesha ikiwa herufi i za s zinalingana na herufi j za p za kwanza. Kisha tunapitia herufi za mifuatano yote miwili na kusasisha jedwali la dp.Ikiwa herufi za sasa katika s na p ni sawa au p ina ., tunasasisha dpij hadi thamani dpi - 1j - 1 , kwa sababu mechi inaendelea.Ikiwa herufi ya sasa katika p ni , tuna chaguo mbili:1. Zingatia ulinganishaji wa herufi iliyotangulia katika p kama matukio 0. Tunasasisha thamani ya dpij kuwa dpij - 2.2. Zingatia ulinganishaji wa herufi iliyotangulia katika p kama angalau tukio 1. Tunasasisha dpij hadi thamani ya dpi - 1j si - 1 pj - 2 pj - 2 ..Hatimaye, dpmn huhifadhi tokeo, ambapo m na n ni urefu wa mifuatano s na p mtawalia. 