CodeACM
HOT 100 · 滑动窗口 · LC 438

找到字符串中所有字母异位词:ACM 模式刷题

按标准输入读取测试数据,输出结果后可在 CodeACM 在线运行和提交。

题目描述

给定两个字符串 s 和 p,找到 s 中所有 p 的 异位词 的子串,返回这些子串的起始索引。不考虑答案输出的顺序。

输入格式

第一行输入字符串 s。

第二行输入字符串 p。

输出格式

按升序输出所有满足条件的起始下标,相邻数字以空格分隔;没有结果时输出空行。

数据范围

  • 1 ≤ s.length, p.length ≤ 3 × 10⁴
  • s 和 p 仅包含小写英文字母

公开样例

样例 1

输入

cbaebabacd
abc

输出

0 6

起始下标 0 和 6 对应的子串分别为 cba 和 bac。

样例 2

输入

abab
ab

输出

0 1 2

ab、ba 和 ab 均为 p 的字母异位词。

练习建议

先根据输入输出格式写出可运行程序,再用公开样例检查结果;遇到边界情况时,补充自测用例后提交。