最小覆盖子串:ACM 模式刷题
按标准输入读取测试数据,输出结果后可在 CodeACM 在线运行和提交。
题目描述
给定两个字符串 s 和 t,长度分别是 m 和 n,返回 s 中的 最短窗口 子串,使得该子串包含 t 中的每一个字符(包括重复字符)。如果没有这样的子串,返回空字符串 ""。
测试用例保证答案唯一。
输入格式
第一行输入字符串 s。
第二行输入字符串 t。两个字符串均不包含空格。
输出格式
输出满足条件的最短子串;若不存在满足条件的子串,输出空行。
数据范围
- 1 ≤ s.length, t.length ≤ 10⁵
- s 和 t 由英文字母组成
公开样例
样例 1
输入
ADOBECODEBANC ABC
输出
BANC
BANC 是包含 A、B、C 的最短子串。
样例 2
输入
a aa
输出
s 中没有足够的字符 a,输出空行。
练习建议
先根据输入输出格式写出可运行程序,再用公开样例检查结果;遇到边界情况时,补充自测用例后提交。