#3814. 练5-神秘咒语的排列之谜

练5-神秘咒语的排列之谜

🏫 兔猫信奥学院:神秘咒语的排列之谜

在兔猫信奥学院的魔法实验室里,加菲老师将一本记载着古老咒语的魔法书交给了小兔和小猫。书中有两段神秘咒语:咒语 s1s_1和咒语 s2s_2。加菲老师告诉他们:“只要能在咒语 s2s_2 中发现含有咒语 s1s_1 任一排列(顺序可以不同但字符种类及出现次数完全相同)的片段,就能获得开启宝藏的线索。”
小兔和小猫立刻展开了研究,试图在漫长的咒语中寻找那一段神秘的排列。请你帮助他们判断,咒语 s2s_2 是否包含咒语 s1s_1 的某个排列(即异位词)作为子串。

💡【题目描述】

给定两个字符串 s1s_1s2s_2,请你写一个函数来判断 s2s_2 是否包含 s1s_1排列
换句话说,若 s1s_1 的某个排列出现在 s2s_2 中(作为一个连续子串),则返回 truetrue;否则返回 falsefalse


📥【输入格式】

  • 第一行包含两个整数 nnmm,分别表示字符串 s1s_1s2s_2 的长度。
  • 第二行包含字符串 s1s_1(仅包含小写字母)。
  • 第三行包含字符串 s2s_2(仅包含小写字母)。

📤【输出格式】

  • 输出 truetruefalse,表示,表示 s_2是否包含 是否包含 s_1$ 的某个排列。

📌【数据范围】

  • 1n,m1041 \leq n, m \leq 10^4
  • s1s_1s2s_2 均只包含小写字母。

💡【输入输出样例】

2 9
ab
eidbaooo
true

解释:s2s_2 包含 "ba""ba",它是 s1s_1 的一个排列。

2 9
ab
eidboaoo
false

解释:s2s_2 中不存在 s1s_1 的任何排列。