<prompt> Kwa kuzingatia muundo na mfuatano s, rudisha kweli _kama_ s _inalingana na_ muundo_._Mfuatano s unaolingana na muundo ikiwa kuna ramani ya bijective ya herufi moja hadi mifuatano hivi kwamba ikiwa kila herufi katika muundo itabadilishwa na mfuatano unaoelekeza, basi matokeo mfuatano ni s. muunganisho wa bijective unamaanisha kuwa hakuna vibambo viwili vinavyopanga mfuatano mmoja, na hakuna ramani za herufi kwa mifuatano miwili tofauti.Mfano wa 1:Ingizo: muundo abab , s redblueredblue Pato: kweliMaelezo: Uchoraji mmoja unaowezekana ni kama ifuatavyo:a - nyekundub - bluuMfano wa 2:Ingizo: muundo aaa , s asdasdasdasdPato: kweliMaelezo: Uchoraji mmoja unaowezekana ni kama ifuatavyo:a - asdMfano wa 3:Ingizo: muundo aabb , s xyzabcxzyabcPato: si kweliVikwazo: 1 pattern.length, s.length 20 muundo na s zinajumuisha herufi ndogo za Kiingereza pekee.  <response>: chatudef wordPatternMatchmuundo: str, s: str - bool: def backtrackp_index, s_index, pattern_map, maneno: ikiwa p_index lenmuundo na s_index lens: kurudi Kweli ikiwa p_index lenmuundo au s_index lens: kurudi Uongo p muundo p_index ikiwa p katika pattern_map: neno ruwaza_ramanip ikiwa sivyo s.startswithneno, s_index: kurudi Uongo backtrack p_index 1, s_index lenneno, muundo_ramani, maneno kwingine: kwa urefu katika safu1, lenzi - s_index 1: neno ss_index : s_index urefu ikiwa neno kwa maneno: endelea muundo_ramanip neno maneno.ongezaneno ikiwa backtrackp_index 1, s_index urefu, pattern_map, maneno: kurudi Kweli muundo_wa ramani.popp maneno.ondoaneno kurudi Uongo kurudi nyuma0, 0, , setmaelezoKanuni hutumia mbinu ya kujirudia ya utafutaji wa kina-fisrt kurudisha nyuma kwa kutatua tatizo la kulinganisha kamba. Kwa kila herufi katika muundo, itaangalia kama herufi ipo katika muundo_wa_ramani. Iwapo ipo na ikaunganisha kwa mfuatano katika nafasi ya sasa katika s, itaendelea kuangalia ruwaza na herufi zilizosalia katika s. Ikiwa haipo, chaguo la kukokotoa litajaribu kuunda upangaji wa herufi moja kwa kamba ndogo katika s. Chaguo la kukokotoa litarudi kuwa kweli ikiwa uchoraji wa ramani utapatikana unaolingana na mchoro, vinginevyo utarejesha sivyo. Uchoraji ramani uliotumika umerejeshwa hurudishwa nyuma katika kila marudio. 