【算法】Inclusion of a Shuffled String Into another String

Inclusion of a Shuffled String into Another String

sliding window

Instructions

The function is given two strings s1 and s2. Determine if one of the permutations of characters of s1 is a substring of s2, return true / false.

Examples
javascript 复制代码
checkInclusion("ab", "edabitbooo") // true
// "ab" is in s2.

checkInclusion("ab", "edaoboat") // false
// neither "ab" or "ba" is in s2.

checkInclusion("adc", "dcda") // true
// "cda" is a permutation of "adc" and it is in s2.

checkInclusion("sgyuws", "oldqwqdmlvsguswyfbj") // true
// "sguswy" is a permutation of s1 and it is in s2.
Notes
  • All characters in both strings are lowercase letters.
Solutions
javascript 复制代码
const checkInclusion = (s1, s2)=>{
    let [l1,l2] = [s1.length,s2.length]
    if(l1 > l2){
        return false;
    }
    let [left,right] = [0,-1];
    let count1 = Array(26).fill(0)
    for(let s of s1.split('')){
        count1[s.charCodeAt(0) - 'a'.charCodeAt(0)] ++;
    }
    let count2 = Array(26).fill(0)
    while(left <= l2 - l1){
        if(right + 1 - left < l1){
            count2[s2[++right].charCodeAt(0) - 'a'.charCodeAt(0)] ++;
        }else{
            let is = true;
            for(let i=0;i<26;i++){
                if(count1[i] !== count2[i]){
                    is = false;break;
                }
            }
            if(is){
                return true
            }
            count2[s2[left++].charCodeAt(0) - 'a'.charCodeAt(0)] --;
        }
    }
    return false;
}
TestCases
javascript 复制代码
let Test = (function(){
    return {
        assertEquals:function(actual,expected){
            if(actual !== expected){
                let errorMsg = `actual is ${actual},${expected} is expected`;
                throw new Error(errorMsg);
            }
        }
    }
})();

let [actualParam, expectedParam] = [
    [
        ["ab", "uxabbcdooo"],
        ["ab", "edaoboat"],
        ["adc", "dcda"],
        ["sgyuws", "oldqwqdmlvsguswyfbj"],
        ["uauqkavvk", "stbwkbgrgkkazdqdwivguyr"],
        ["jsrsvticzizxdgttvevtdjv", "evdfabkqornrvfodhncarywkdpkpcbqiehbsanbticvvdrsxtejzjvttiztvsdg"],
        ["vxawvaaxxmvwmusvactvua", "dfnyutauktxttggircfonqxkntdarbcfqjfopiqmumkkpcwqclamojxfwuamslttxaqnuzptvaazguwzazopxspmiaemysrncosh"],
        ["ftoraoaazamnoarovhkcvkczmrohaumffcqz", "snclfgtmqfsphufzrovsxobssmftqycxutinbfazvgvmafxlegduffbtcpygelegcwgfslmmyiacejgbhoyjnhdcxppywusjbpcvvvmaaahmonoocuofqazramzkrrkcoazcfhtftfmyx"],
        ["zstwsnvvifghh", "chdtpmrqkdpywxovzshwankvebmqedsysxkmfuafxllvktzodrfrfwibbbsqaszotvvcoycxjghmqkihutrfyfcixlphikkvnqjyywvtlcugkcdwyksvlzumjkdzhjvyagnmajwdfhegvcnaypnaeeflrfzmitdistyrvmxagktuemzzjhym"],
        ["rtwufneitnsuowucpcoiuzgnwpagruzkugxnnogecvesbppamryvbvgncrggugerinzmmeeemzrp", "fugzgcmlwxbrunjzabeanghesyvrotgzeqmeibxerewvnisckwwyahjbopbapduaxjvaohszzmcnwsharwuknwceqmyotpdaidikucpqenvrrpaboicjzjclwbtltightgykvcjcrziamrlqtdvvpfaaalcdgyrshqdaicwzlxdeqbxvrbrghawapevqdbocfhcrsoujyeafyarwtizmsadqrczckndmiknlmbagkcnggbqqlzrneacrtjeuieguzusrebpugtubiinefgurevgwnxnoeoovrrpcgrczmsamgpacknpwecmwynvzugtrpnmzng"],
        ["hdvphgensnvognqnzcdqiefconziskijqweeppgwogmzshnjdjlqpljljtuoeishidsnpgietd", "xwvjqhgswrypssjiixvworjdcaxkhootnniziuujnmpndvygkkhrpjzdmdgfjhyzxivoqxbxdouaspbivfohijawhrgpnljitpryqjhiuhirikrwlcsakffqmpczrffsnoogsuishwgkypixflecsexmqxqaeizwicdhxdifaeapjrhqtijbtagswkjtfgouueqkegqzqjwgxlnvagfolrukzspurlxsllcddosllwmbbekjnexqvtwqlelvgejvljdjpzrggzywxhdrbagibhxbzinyzwnuuhdndhnbjpumbxvomupemqxjcbbbzznmdgxrmvnmnvlautbtdityauwprnuouplbbhmttgmxarykfsnpobgemlzdpazmhadlulfaktvibaahwvzlvixiteclnbkvbnjajjrdvtjgztmcjknaphdswxpzibjgmqtqthaxodrsjaacypnomqshkbdtervkfafeudrhrwcltdkrtpphtzfc"],
        ["rlilbomorwrjgqlgrydhdiunnobdgeyrhnoblmqihuhgeeudjmruwfzgfeernmmrzzrprwbnydmdbrnydibdxnxbhxnypap", "aaeozyvningxhhwaoirbfhiczunqhrrzgfdwmyhuqvqyaewodegrftjdcjsnmlaykfzcsrxzusucksdmfjusoovokssppsqnzzdewobxortxthgabrxopplqfpymduvrskgcpcrocugfnpnxecvhzpywfnieesuryumwmruufqqvwipuopbdnoghdcbniissecjbkmiecyyciywprxyyazeuknjrphnpuiivtctboafqwvfwtsmtmthununfvhpnhvnigarayggwysgnwinercbsymajzexopvxeqrqkabguhykzmypsmtmtsshubykkdnztfafdrukinterszldqdclxembeqcgcqzgsfuzehpvyitprysxybhulbwzpeuhwyrhwjhvaxcsbcrkrebdzjbelaadzyaoxkadzbnqpfdvjjwjekgagnnhlwavorurqsdwmcqnqbygtqpyxeryhlzkemlfxznjzkbkrefdaxkjmxqdccnrzdwhinnblbnllsblcoynpembwupxiiruglqxveexgvluszwexaxbepfuglopwvjdnfolvfwrelrumlkgftlwiarsjzalowrzgemrteulxanlihvybvbyszswqholqqqlfozxoqxdzowljiwixgofnsqetvvdenjenqugvebwnhomqjkdzarqlrqozifinltvrmrretfblavstdzugmuvbxppdlofsqxqzbumgcliwjvhfodnfduqofvnvvayxwgiqsbmeygleasmgswehekavanwqloqmdlplowtvdutmsroubdzkqsrfpjtfglnucasqmmadmjdeiiydeufomslflihtdybubynezdmyeywualbdzshbwctccayaxrmfahtlyidjgptinzzmbpfsxbuxrvmapxucbzslqsrjtrmeepiirxtwtmvmfjebrwafuuopzirsksqrijsfyogmqwredovlfwlyrejrisrpfgtvgyekcyksdreerjdlurbrgmndhxnilzifbdoadxdrgmobwnnrrymwmolhjbngrhbnxdyodnmieepguberypwzzrqqrudpbyurleghhinymfc"],
        ["jiiscqsppxbyhrxglggbcravrrarlmktrctbmshr", "ezvfpopgfdhiwhgwhefequhodrlfjbteelbakspsbvhittrxrvajvdrbixadlvbgizpzbibfeavhyqqddmzxhmtpetwoshvdrgmlexhvvrkugvvvmypjmrujgkzampvqufiicqlypsdkamymplvenacqwpezfcwiocvuprfvyhnqwyywiqhdktfldnakmkggbgceyaxdcmxzrtcicukxqwzkztivppqkudpqmfxhtcuewsvsfyikghafntgmpyoexhjdcmbxksrnbcairljswjmrhqbleffdpgpivnrewmmoxcepyasmxrnpvqojevhbmxcwhbawpwacgsaamerwhfogwqyekzvjhvfehonijenydqietylyzrtnqepqodzxbogzzszqcblvvvarqopphsxnvcoukpxnzicubeqrtblehjnrburlxajxjjsgygihuxjozccejlofevqywqjgxkytmpakgrhijtenflvgnscbiwyxuendrhmdgscbkchdjckspfynihrsvruiyodoinixrsklcyhbckjjbxylqzvhlmkpoyuawhzuechvnquzkamouydszofnbpsttybzdxoynjcgdiynlhlcizriokxktrrxabypvarsrwxpwlcuqtlkmersgkyframrpiqvhlqrrdphjdkwgplycnuhpeogiepzeeyougolrqjsdhruqyxhvffgjozyjtqutukfsqwofewdiijrcjhxushclqmnxowpldydvtelkixzavlpcbgojkfohraiitnwwchtptqvqzehfgvbcmnoranjemwfwjqhotvaajvzcdblujqatcpoffcrilwmbhshdpgemcdjkurrjlbncivjxfufnencjmxxmzikaspjsahhccaesavesyannkklosgmzuupcoetrzdtwesetviiyvmusfsruqfhnabewnrnlbblumkfzuxdsmuztwwyrbyjtsvzxkuyhzsuwfebojpwlospsecxafryutfkdbrhcdzvmmpraojghfljbpkhwqelefhnexxmkddpaxdzpsznihxovozqutwoenfoafszlfmjjcqykoaiigawashcuueupvrlugrolrfkosvetzazjlbjfacweuldtnakdseoqmtgthbpuluyuaweanqjmsnzeqehiwjgopijcnsirfwmoowkgatgzwtlratopiqyajbofegdwoilevoytnjnvsxpoazudnodeogyoyfakqtjrfpgcinvcxohuoavbkqiehnyppqdgsadutqddfkbryefpelwwogogxjqhpdwlkbvwkndtquooawkciaxlnbrlssbhhjflsmjtfnckrueyjvmvwpkyabwlmjditzzxjqtbwclbuthwnncplvqnrnoqqmfpvotagnhmzqukyrguricipxankjrkqvymmjtygpxafkzwqrbaigxcmyegjtsfynhgtpwhfryhehdxwjhguybkopgbkggrgkwp"],
        ["rlwhtlxxuzktxnsudoyfwaxeduzgdvmmwuqbkqwowtpbcuwuukvddkzdshojuoykhpomtihbxoyxmphvfbbiculojdqtwxerevxylcidwtwvoyjdxeetxcszzsnohyzlypepaubqvfziebbo", "tbotfqsqkhbvecgasaibpkalymvntwerwqpqypxqublxrxrclrgweqhiqsvtwuldztohdacudayauziznssrmhdwyaplehmqhdplbzxtcoelekjtiresopvryupblkqucxkgzwqlxyvsaeoobqwjlxbwgazpntfatznnnfchgfpaoceiimhqyupdwlzgmhqlpbwejluqemydarebpqlymtyfauspraqhvfzmeshiwtzreerkcvqqbdwusfmudlzvdzfbemowajosufdfgtasaipcfcjngcobrgnxvcnjqgqacycjlfrwnvjxppuumxwzlvedgcbkoszmfnnrqsvttytzekpotfvxvoberorbupcxdwkjyuxfiqwvncokjasewdwrxtpmiyxvijnlflivmchdoidxfosymbtetuyhmvlchhkikhxcfbwllwvhbltkknyaxdosdcjiynnipxghgodzkeuoaxdypnasgjxfxjptyoeewronygblrlekejwyorrwpspvdhxslhhmyctaratcpkccazcquhmutjqxwhtqmlvnzhdtpexwinfcrolwmbabbzntqsibxqgobmkrfdckhnlbcfxrxuretthufpvjchfoqgfuchcoeojxruynfuwsqbxhxbflbmildtaxruizonafdahtmpjaasndzjvkaxphbablxszmphxssueaghsbednwygfijenhwobumpxvjrykocpccsstevtsphzuridpfyouqktnweystkllrfvgibrdvnuaegjehmvpejxyynvvnchaeivqhztdfynwxstmaqlrabwmpbtoasrusufnoyalyxatixszbnkqtyfdwumvoqcgzoyynpaamhawidezxdflyfusmsmxuxmkzzncxewjpphsxjewmhoqdxduobrisjhyrgcdpdkznekcxpfpjnbtxmbzjucdqszvqroafipomdelfhspomrllocengviscgmtcyqigaxeoxavnopemypjqppxcmawxpoxxifjrdiwlxxvcpoeuwdylpinbmbbyytacviirujccibqnixivliglcbikxrbblvtekpuakotzcuiojpjponjyknmhtebsggxxjzlgbauouxlqeukaueoijqgyvgckqcxztcrpsitfkpfnuqtntfxylrddpfnikrcmafxzuwfkyliwkfkhrfvcubkrlrgzobiavivetnxlyxkvpjlhtvhkrgxfooitwabmriblsdfehyvjptmxhrkgykjjqjhvyzwyzmpdhibtrqlnzjfistmvhqrmgwdaybnaidnpwsevioruknsjatrhyfjjjsflfzdogpzysnxzwmlzbwrbjouoblolxdidgrnwyaepkuyufabhouknccysklmrkczuswctcfyinxeituqlpgksdmpyttvxnkjietsyqoiiyxhzhjlqruzemypxyugirahzgvjiufeuzobczuknexclqlqbvderqxmdwxnkqxpjklbfiteetllggbicqdbscgqxixkttgrogltdlclduskmfljadhlcdencmoejyaumeoklvcriitkgblwmitjdnbgjmhiusrxwlksnpmgyeijvmyouiejwtgrsihuundyolqbrwhkhphvelwdkjzfprgogpaosnhpibdbqryjtebcnnhizfidlkeautegtefycnvsvpjipurksejomjynqymfmpyvgydepumpvtymqjhqdjqvgrbwqrcbkmmtwtxmevdupdmxydysiwchikorxhzrzqlyqekbfgrxthkixrqidxdfusyqsagapkkprrdruomlqjfjykcxfmjzfnurvhxriprevdkoaogddtzoopkbrmabcgufywxsodvyxmgkrqysjpoyewhoydhbilsuctvgcgcfgykzwbebbrswcwusgxzpajifiwkxwcvgvwcbeuumfxavgtljnhgkshefdwqdfmshscjltckbwwgrpqjfibkemtchckmejexcpjpimhgybhjopafbqrkbwctjoiugpmaqbwyyuhpzueiumkdlhpocbxmfaawzwevdmvjqiyoarxjbtmoltwdeyzaofnjcakrnrszoiriqhljoxoycjnltmqpdklnhaitiuzsvkfjzevsfytaznxhifctrvvapyqluzcyxtxyskfnokccuurficpjgrnsvljwjcwxdxqphnbhyatwccwzvtomucgplfxhileibbwbuidbngdochkydnmkqcwsdbbyinhvfvbvlzpvsakqbptibbainzrjnntenlpgcrgrtvpptopazfeqffamvgkqazidxizwbvrajzyadzqnkuughddwbutgivviwyfqveacwqpwlzwtdoxpftrwvjlvkghdpqxnvmzjchtqymnswdrmopdnnsgqhexcimjfiozdarpezzdnqocdfsqqbtputxbshraiyleyjxiksbwaiklwjirfagpqwplpxbtwwvwwswyomtmbsmgbfqcjpkgmyotbcmbgkhyjvjzuvqqvmjjigojauvvdqxmvkfemaisriyxuzhrpagmhqqikprqouqvrsmnvwrixpczrlxqbjaplosnwwcuxdqlmimknalpimcdiypmyzallzraoquohgfinusqpinpxlaugzudlfselipnaacjueahwsyhwaizevhbzzdacxacvkpzsnfstjpfgdmixwtvzdrumnqxfrykkzmmdffkijkfincqhazapzwbkqbzagurvephgzqrfiklbivnvckduipfbxveceendedylzxzlacpxjkgeyfyyyoezrimmfwtawvtfqunxhribvqsdeioexmddskbocuoyfixtjgiwhncjepfmrzzjnmujxqvmawzgxiwrcodotyflqjngpnnxwamoysnlwvjkoziqtvlsexxnvbslntoztrrsndrsoygnsxfxfsaueeiuyyihhpkxqaippvdtjfxtrlbndeiedbmxkoqdtufuojyowfnvhpsxpbmszyduyllryxfckzwhmsqlxthlktccexyvbwjxdxtowkoauwooxepnxqzquodzvbuzlwwduagvcpmbuztzhvxudheyiiohbskvuttieejwoyrbwbdp"],
        ["zuxvzlbqqnxtybmvzvlyddpbjzcybqbjcvayzzybiaulgxljgdowrzqonzcwnnndedxwcmuynfpzdbvzmncsqvavvbdh", "azmcibomfyttfjistwgipmwywejctzayolydjzjpvatcrqnftfljfrdmrsnfehqveksnbdvhvuwkrjhymrxppknuwtxvyvaycfbqhmmwhrhbozodjxbmlwhcjomlvbfttwkmivjhzytsqjaqndwzjibdqsocltgclrefpyyvrpazlyptchkeahzfoicpoxdzxkfflvulrgstevcgijxgybgrllmzsckhrzktqxpsrxfugvkcctflfdvvappnxzgbgmexvjjkqsxgeyzexqajjbcjfxyhquaedzunkwakxfunqsyixgfecsexrtrqfgtswylwrdgcgeonlmbdscmseomtzzkhxxnuoblbkrujugtoibernphnodifggdjnerdcmwevjompjchwtlsrhazaktrpfhtmbineroncfijgfzswtaxyilyfnpapopzbioznnypmqpezqplitbhjoopecdugtcwymeeuraimdhojcseemtdxgdmtodawkoroiomkdszncwwipkowanmmdphwwggtkouckupeaqfyuhcumxtvpgyagcjbpfrrgvjlnrmfknuzuzrjratxweklnsckknloujdcmrzxgnkwtcpgfkjjtkawsbccjueptdhszzqvukisfghxirkzvgoudolvbvdhitvlbrrgomyhcqpgjlgmcjvomqwscuwwjvwbvmmwyifvdccvqachfjteoltsoeogcxdkaoncydvcoijsxqkhbegyhaxthsfycszgwtwfwjbufronmniexhntjxvgthvppmtszyfhzvrzoivhxgcqhtxqnffelieiowtfbxhbhzvqzgymnphtxisjjanmtzkphytbangjwanuefisftmahurfwlziruzvhogddcgiclrkvlzvfimtrlphpemdvqgojactgjskachgjximgmtbgnwccuymqydgocoqajcegratvyumrebkumfsvvpenjqzrburwhmulznwdytzkihiuwhmwxvlophudztkzpyqtcismwnyjvawfkgrmbjimsqimqubtegxueevwutaghvzybfnmueljxfswkfjrkfitrczjytjhwcpcvubbgmpktyzflcksijsbtjrzdryiajodnbgtiojakrlwibtbsozipjviqbmveeyuzxlbbstxfezsnqwjrwyoucqhxowqueuyvztuwarkhnyotpsrrvexxmebkmsnypxqaouhjlggsvrsxfbyfhtbkkxmlewfwwaxjcfaphdkntvljcttpdegilfxhwrsoedzbfnchzelneemnjgtfhyxhynwxejxfdcuboovunbwpepytffhijdlytbtrtqshrzlsdapmzxljyshtnfxpiqvfzlxjwfpyimzpbuvhfnotjuuuwaglcvxeywjelawwmdisfaephvylyufzvgnvapqkrchylguedwelrmklryjxmmijokofyhazlafnbjojbnwdgubwumoaoumlpfsnqhhmaklizbvcaruozcfclmzfixnjkfyjuoscuvwtjcizkgdooxauhjjvkexytdwxgbxvptqgzrlryaqeehslcdfkhxsfpvidvzwirebuajmvoxspkbwkcoovuyxrntymgmpwoozddrjqlhvwaeigmbcdbzrxjtcfcwgqwjdprynqmonshgtuodhakwtbllqbhzutjsqakeqdfcpzjvbicfsizxrkvzroaebmrqlhwedufsnpzfswlgqwcpdfvacekybbtpeongdahctdwsmblhoqowhqocvglyujzxfurzfwcegfvrdwagaqetiizjjoqvlaqcgpeskzeuhpiqidaflwbkcrczjszrsioonphwuidyhjfmdwmssuytvcouxldrfgbayivmptouycdiueaimwgafmyntdnmxbrgdalxbijcpstszdaofaisraeosekoghtdiudfjhqchnywjewyqfsqxyqsbvxzqizyszpvfjgaovfszptfbyoylpdptcczuhsvuqkxsiemvsrqhpbglndmtpoecmnlczrorcksripcswikwuowuqrywuuoctvhnjwweavqrigwcmiddjccmqzwdptidvstozzrecyzstjgteexqssyxciukgoasunpjdfqxifjkggwleqlivgvveclazjyeuhchgunlnvtkyvzczdvketlxebkqenvlplrrecbntxdbwdydqcofjbalfeodzfoyfkjfteqxfgjmiehxmtclfyeuuvxraquzbnmwmojdthhcabjckpeydejezekgiaqjtchebpggrbjufwekmujdkrxctgdqxtdijlmaadngbsqdpyanpgopazsecgudkpptrfdtubxjkhaiwexbdktuwmwfmyuccvgkkkhzsupofmktccynjdjbamrlysbxowkgicbmfikuekrkoglmvfwsctmibdikdzbtgmfowcjxcynzgdstziufkwroccaaczfekkinipppkoobkirnrgdwodtanqnrucmfbhhpjnuggaemyckkdlahtqifzjqtdgpfjokvnqcflpxquloooztelwhfwqympedxgubmiqgplygyufwdwwybxboqwxbiizgvdxhiigeemrjywaqubwvlxelwisvsrsrqgrimkfedsllsxhtbibeikypwxswxnbjhxjbuqbqtybnunaiwwfptsavfdxczfkitqncmvyxxzctnekfmsvpjlozgicsahdnfljayijybmzpadeozoqsacecmrmhidmsnerkqhoenehntfvhekozxqryikydpzxtosjdvmvfsvepnlbmisqlszpbojxxftwxgqumqfuztqboofmdnmyaczwjnndgfvlpaywvaxaqqwiclhzmgigozttswqpymipuiaewpalpnfoftzncmhqgvczeqecoyfzastcwdodcqtjflfrvrkysrvhaunyjlgszehjiwmuannnprrdcfxhyrfqahoirxiowpkdilevbsyyethzpdexllymfjatufwfadhgovmnbtvrdwlqdtowjuvdsnbwoiswykczjfzcgyzukhnnnjpskhwfnbkyzwbgzdgjouipvelixhrbzmforqoibiyqhygaoaalsfhvifzxovakcwxywiwvcgvujrmpmkdldzfoevedioqdwealrsksgohykbtykxwbhydvddxyqhvsixxxriaooolmwqnwdofiqueyrdnfsgmiwtfrewoarxqsqttdmbqlsebbzcuckcavbyuebdxpwbwhgdkvnoxbwhiolkbizhsbefbahydhzzrzbwvivxhuamtfhmfwxwdfltokwtbzeofoowehsepwfqiyjbywluftemjbcqifjbyluoypkmopkylhtvebqsmqbklwzyldxwuylzyfwfdrqfjyfxregokpjuicdgcuevvllgbkjflosibxslidudgtwrzznsqyxsovxebdafxpjrlmvhbbybocfvsbzwhfrujsjuopfmwbykqdxpowfqsekbpaojksaietlnqebxxlmkcmxtrilzwdadbxstjyvbfaufysfhvcgwxxdhqqautjyrofvytlqjlifaedityquerbhkyikmxeqegvmhtudizonynjkwwgalscrwwjmlimsgumdxvqgkkmfyargnnvcqwrdvefuozazoimpofxijnwxeckmtlgsdccadbqokhqhokziauyaznafewprtaebwvdajjuhoietvecswmyofxcskxpiqrdtejsvjkmeowiwqrtascobjkxmhdcqgqpqrfgxvnuexvscdhvornqvlxtggtjmljxznpgmjaxjnxiikefgarvbuhkrhaeiwbvvcxmgktmdqpmsgzarhqbedytljvldetzkytkogdnfxkbdapfzgsnmopvsepgnxbjbvgibnosvtkprdkuhzurbfaryinwtqszjrotxjwobfyinooqmprznneyntqpibavlpshylxjfuhstydepjhgdrlekogaianycixhmvwdfpsypeozbuxudpibbgtmmdotimeytnqmzpelcqnpexdmywegflgutyujgrvnszfprpjxxhnyedafqqfrkyftiqwkodqwnfpgtzrkebncohthifsajpxthrcbqbvbiqarnujvbjdztwrszvdojzqrxwkdjxxjzvbsnchgdwabigmepxzelgqujktgpykwyfkyemtnlfrvkxjedipdvjnzdtgkylzwqpaskejhxtyrktjwwmeuenqmhxjagkxbrmpwqsjndgobjsafzxwrydiajabfowrcdgybmvuosysfrilympbqrgwgdzwjfxwdqdbpdkbzxqikdbztgbrmphaeujmjrbfvwxaxabllntmdgqidjnqfqyojpxcxtmcfljwobzsgfsrrzfeqrzlzppjvyhrarqgmrwqqvtkqxxucfrpyeledveeaepppjrrxtqusbznrhapmhdtuweifofghketszmlxnzilxjhpqawjnnjlsvajqqtmaowhffigruyyhlnfbefcizoxigjqpmbejinbqcasbieaeofxfhmlyhatqvkuodmhclmrqqnpkygporutazsyupgocbzmwmwtyqicltpuysvwortlrncubkzolxigenatctuagrvroipnhecgrtdirhmtflkrskbqyrevrmdcxdpxlpzjxclunqeuedfbdbfrgjcnsyjsfllcpucazdogijiizfcaqwzkobugilijlmknbjrznioxxjupdrqrwbgfxhjlufsfefirnwuwjwtvrcfwtyphkkiigpgdcyddmvkyuwdylipxukgzytmppoqvdjaunaqeijtjjwdsioeeegybjmsjhkwvrymsretdakttbahyxiqpamshqqjzygkmdzgselvqmdxvuzurasvbnghyyjyvdbhisnbgqdwwjlslysqmnrdkhaqvboxsjghhzjvkpelvozuf"],
        ["quwvyxvqpmvhyxevmpvckyqmpgibegvyulrkaauyppbqmrnbgqpaxwpbfrqveyfpnrmckppzoqdmnpyfgkwqoxrmgusvhpmbvrooicbigvvrzqlakpyqguvimmmylgtpbsnnbzwymphomgporqvqkuyylpbbkqo", "vdhjhtdlkozdmhfdzdbdfkwzfrqyqhbacvdkcutwamexulmvcwdqisomhzfkqnhclqwzeovaoqttlzhmbpqljndslclnsxzoscmrnruuhrzcbecgmggfctuadbqamufsarfwhzhwcclhtndglwbldcnaoklvqapxndinmtvkjkwrkehjitwbbkxpsgqcmsryfvvbocapzbvqehrcquskzwlhfysehtvpuxrzhmvrszjaoitezhmpxwsivagtnfqimvhakagawefrcqyzxlsdsjvflaarjaxbmafrndaogrbknpdkltwsgwcpccwivhjwoocmodsehfwrkyovhwsvvkzaptshesmessfcdopshcbynjcdzkfenokrxoovrdlnazizhakrusgqnwfbvxbrveibeysdudvrzfxhfrehxuxrydlcbyoqtxbwkixognmeijazbnoyimewylqssnvrlqjobeuwnvtuvxnfqkqpfpxjzfvggrbbgibnfbgqcgdxitanuqcjlcbikeesnvjrhytxefmeverdkiufbkhtqhgzdgbtgbetywxtaetashbfrmzoljnqtbtgqsfsialcuoanjjfmotarilfayyyvdmwazahqdbuemfurwjanjylnvjnxikblyykgfyhctweqwlfclfnytxoslscqpxfopnmrtywtdchjdocbukbvozfypwyxiqdezjshkzruphojphacgasmxeftepbqhqhqsvhfrzuxxootyqjhiydxiuihtvdqkxkpfszfbdckiqgjwdxxefkzguyfcnvqaszefslgdozdudshxtkbzevlegkhakrjfzvdcurdtzjljfvwbzjpcpebmacygzxmqlzkgurfuzjvutlkmchgmktuycdrdfxnrkgxkvgilohlotbbrpmklxpomnbxewqomqkdvqyjuftdlooqpldgnwupzlueoydoiurlzxidhqsdkhhjmkbmvlquyzslrnffkxlciqvudiwvjlpmckfalqtajvdoxqkwwuggtynmxzrhpwokpqbxeebcovdqcgyhdueyiymqqcxldeicxcfhchufdukxcmthnxzrrtluyazwdklqgieelxrxduljeimtrhwnrtfvdfkndhgkweagrxdepabtxuuuvhmmujjqowgushznziumioaugfrxnwtkvxxrbzhkbijzkbmavwzwytihhrhdpbfafpoctadwoyhqecezpvnghxpsdcjfaatmkekbylrwsxifyemxexjhwyxfivfpyoqrqfqeohucwvsttbrverujuzikzbkpgtyltepqnqxgauqxnadghdbuolmiyvblapkonafcomzpdzbiyefbsxlmzholtcqpgllobqsyxjedtibiysyerkyqliohwqykudlvtzgffsuzoaiescrvntnqrcghnjznbtgixdogzwtkkeyiwayaslgsttsrwfuxywvqosnezbehzzuuobqpkfdwaifqqggryhwvjhppdlwdxijvgyjkjlcxveibvrlvrgfynrcjzjmgsvqtxnjnpnljukbfszuqqesgsjbefzyyhmmomwgokrchiajagxjjlujnzoitubjmajyauelncuqbpzifqanhrxbcwcdrpmyhfaizextwecejsibwraoznqtdrvmvjxftvremwobsvwgmrhdtvqjtzrelgiffpwkogjbtzooybbjfpkxlkdtypnlxalxfsiqickgpqbqlukpnmzopnywykujshbeoufjkwmymfqshobzbvnmxituzsflukpkcgrjelzmloxoibtfmnjbjlyvmcmcgpwvhcnybsppmornydytbhxbqaafpdhhhgvkkafcngltmgdxywymtthduspdsoiwgrebikvmtyhfgvyrynfzcvyoihskwbvdqmtsknqnezpocyhmzhexumarqhvhzytedtnfclhuopndlwyzehdhhlzjaueuwrjrbavjuhpsaiwzdtjlbqhhxbtvdjbwydimjsgpvifxtyejargvatmnzmwnbulrygnkrrvskulgiephozuotusphmcbqhgyowubjpiqdnohsnhweuavuhwzpesovnkpstbwpldvliyxqtaqbzxzjagymddsqujxovrzzdtibmsitqoprzmugnnplkdhvlojirkzlmhhzrpzhjmdpcqpqdwnwuotksagrdbzxgjlysdirjlnwmpucjczarjgndhwjgmmnpyehzffuzninnjpunoiohusckirbbrvbwgyqdsfxnbnqfpuhlygcdxteqivospmupljyrforttedezdfcitqbnrmfmubrgtkhxuzqboswnrxaseeojjtgbmqjhqqudhhzqdglhchlqluqswpqdshwmohbntqciryzkzfprxzvggxztezpklgtdodxlezdseyabkqdvvqizgwhlemfknextbijrnbxgfnonnutztbjbxlibrrejczsukfnkgpgfcmoituufaeudmcnppjqzyalukkmydxyaaufaegsysvnpxtttgwdkxyzdfsmcxexczifvnoldnztmnikkaqbjujfrazikqcjcxsnezqvznlrxxtgprrqrypzmyngvrlkwoiprwmzbzrtqryfxwrslhdduvwlsohqkizdvhxlnlouztdfpqyoiszpljnjaimbimdavtavmkaqhjqnqsketahwyvicflgbjsiqtxuzcpjjznwotdyfxywrsgxlubrodhvrfdxfzkezfgmegiqtwnygvlwaoahsjegrqzekfksmzeqjrrbycrnmpettgqzdavaixodkmrpqnlglohymiyduwegxbqqreockogatvhvnwpyqryugihqaspfjhvpcnmlnpsbfqfhhdqdzvnzouzazhedpgzgciwoxqqwqwegnkbfkhanekyklxuknqollvmahidbjebxqwvygqaofxvvgvzazqqqlkblelmcoqwycemoqliywrchioznfosycfldocpoktvgbziybmrfxljxcicbooldbhzezlpdikodwcmsqmrdyswejrwpymqjpelxhqanayicdckawtwwzxlgzxccdbichkjeahaldhlyuluytartmtqcjmxdehvsvwhsivtwhbfrdxukrnikzenzyyzfmqhtkgwiukvoyhgjjdjpfhhvywiopgjznujjldpvpgkqguwugorknprhduvucvtmxhgkvkevlyigjaoojiodgnmimkhgeoqdvgjrokswjjvswetfrgbroyrwqxntojygwevfskmiusoszcfpbasxlleimlgeyprobxowhlkgkkusxfouwphzpzzsdrsosyrlltpzaixdwncapuujsqkjizeduncjymrfjjtgatcidaceicmhwlftjevtaajtezmfuaooawdliazbjntrsgrgxpzqzgfvgzkabieahppxjvsekzpjjucqkrllkhcxiayoajiyisovcektwvnytqntcneahiwwahtfrnntbnwccmfyfkenckdnotxzfiszxfgzqhoadtikwnlobaebdhuemanwimdskhszqithgehleqoijcnkvruhlqzbsyoyabwtvavzvquwzammhajgbqysxiimxzpmcisrdxlvmzyaocegzadsqheodsaptrmoctzntcnbbljkhwmaoyezjwdpdgrviyeejhinzmogwtcjzdjpmxcjtjasutxtyanwnivsuqlhyxeyaxbrmfeyhnqloncsvdeununumttlkkvtqxnwyobgaiatxrkcwjwtfvciwxuozqqdwvxyrnrrmgfqqzubmibqtgvoykwenxmcbocamryxuocuzinktfqudxqwyilynngkomwehfglytweqmzszkkmutctkdwtstkflexmmodrohjbnzpsdnesuhuqzgtynmxkyhmifxzdrozodnofgjzaanldvzocyhhcatcykcsacmbyctmbqcdzfavvnohzbxggwobpeqzmjqhijkjlgspvtfubzotiyqziskrodaloamldzsxkbewmrvrppgeliztqkuphvlrqkchlhjyentxnoonglqlcrwovhtwagiwvhfwhrnemfzvmbscuxzyiesonmhyoruhctolmeousjoentspcqnlipirxtfljvxhglxcfjmltvljdoieyuuhagfzbnfgcttpgtqmkzccnxaleyajzjbhfmkulqhusfohvgujmnutnoftswwfhdhwwbudaohrmkgufdnlsashvvhsjumiovehnrgeuikbtbouroiemlcgjkqqfzeewuegjbeocvsvtpzesayoiqnngrbhdhmriadziirgdukbkrarxbuvgmodqmdoubiuxqzzgccfnbecgywwzhrebidfdzfcqqssycaiprhkiiuckysfvvumsgetgxmmiqnjxmnhlidpxtajenvunhypnrbuxfbzaepsbgdcdnfmxchjotcztmetaimurwdtwhuokscqqpxqfdxuylbgtmxcnhpgtsaveezcpzdtdnvjwdjclvjmcazvxvuaolewnncwkrfijmjgliohtanxybjutkkjlefszbasvikfjsjwzuibdobgzekhlwkxatwtepulmosfaivdlsgzogoiwyzcvfqdrrvsomqxhbjhgutyhsvfopyscdoyzvycccobszmmiotogmwrtquqpdxuhxccxuhrysxymvfxdfzbswrefajrmezjeefgxkwcmvrulijtcuxckvoojiecfupzrzdzwjumuovfklxfgujgctvpnlvscaprckeacnqjcwwqnuuiirinsepqdbafcyrzjihddrfbcktanqpdcuruuytbhncbjzdkbfnvcgrkjzfnookmpbfhhggolmcfczsitlxlbfmcguaygfsfsppzjqkcvtdiznhojpflesvqvyiqmmdcgqabfxwxcjfnbnztmoqlybwvtuiouikqjbfmfocxnugtzrivsjorylemsrjhplmnxlyqfupomzlrlvwjtimqhjwauweyubulypgcbbwfdouqcuebdtirkyoycwlsnsdgvwhcellnootcvalafeovkkycbsllszykrukblfkdturqjzwmyhggwypfhsddbipjxybdjmkfkwmbqkjbdcawivhtgwhdlippxanwoyvvvmridpfjnjjaslrfpivzylyimzqezanaxvxmwwvkonbruwzpecjbepnixskrzqcyhmhuetyxkffegvxncszizewugogcrcjvuccywdlczrgcnaiyihmvgldgucyfaojjdwaimsslunrhqfyiskqpfdmnoxazdsgacanlvlutdvddisfkougvrbrcqawwfbwfwlwzhupwofojjmdhtykwzapqarpfergmitjdsjhsegzctkdeilvocqexxjvzplnzfmdyhmxozkqtesujwqijnnvmllzwmtjephrjttfaddlzlxjcsaagvboshhvulqeibfpmbpofdhxcuzufkogubsttuakhqdlqdsiifnpymttmkukflzokmgenhosdvfdjnpgvspuphrbcwgmcjsssbqixvsgaxxdochypxffhhglohtojrhrswzjblldzhmdhrmwydqkdeonytrqvxdxgmxtcuokarfmuhassmeqmkexavcqbvdsiawggxjwlirfmsoqqfecopjfbtapdudegeoowpmqlibkvytdxspyklgwnkqggapfqsuoidyyvsrprxcdysjooyanbdqvtqsnvndzqpgenrqkwgxxhzxhnhocppmjbxlejyxyjamodtybhhexhbvttbjdwftcwsfiirrzmiqnbohhlahlktukqzzxiflmxwfptqyxhppgcbpthyhwrhqcrycsxkzmlhximnvdleajsfkbvqbaiqulitaaipkpwvfwooatxwfrmxogmpbjllqkhjvedrsocafmbbqxitszcttwkfgcmnoxnpxamktqrivvgkzbgaqaqhwukoqppfephouxbkbpmkbmelhqummpypvvymxpdpcrylacygnvpzyrkpxfbwuronqiunoliympbpklvbpvrsbokywrrmugpqopgpmmgfpvvvbomqvyqzrbyqgcvyvxaymqnnyqwqemgsmigpwfjuv"],
    ],
    [
        true, false, true, true, false, true, false, true, false, true, false, true, false, true, false, true,
    ]
]
for (let i in actualParam) Test.assertEquals(checkInclusion(...actualParam[i]), expectedParam[i])
相关推荐
小码哥_常2 分钟前
一套自己部署的 IM,客户端是同一份 Flutter
前端·后端
蜗牛攻城狮2 小时前
微前端四大方案选型对比与最佳实践:qiankun、micro-app、wujie、Module Federation
前端·微前端·qiankun·前端架构·micro-app·wujie
她说可以呀4 小时前
Vue插槽
前端·javascript·vue.js
qq_448011164 小时前
Vue + Jinja2两套模版与法冲突造成undefinedError
前端·javascript·vue.js
aixingpan4 小时前
aixingpan.cn API开发文档:前端查询夏令时和时区接口指南
前端·php
2601_958352905 小时前
23.5×19mm 换掉一整条音频链?|A-68 集成了什么:ADC / DAC / 24.576MHz 时钟 / AEC / 波束降噪,主控仅需 6 根线
前端·音视频·ai降噪·回声消除·语音模块
UIU1145 小时前
P1233 [ICPC 2001 Taejon R] 木棍加工
数据结构·c++·算法·动态规划
论文复现现场5 小时前
WRF、FEA 能用 L40S 加速吗?求解器检查、断点恢复与长期运行
java·数据库·算法·wrf·有限元分析·gpu计算·断点续算
ZhengEnCi5 小时前
用 AI 写代码为什么拼到最后还是拼人:算力瓶颈与领域专家提示词的本质差异
算法·架构
志尊宝5 小时前
AI原生前端开发(039):AI辅助的Nuxt 4全栈开发
前端·vue.js·ai-native