#P16653. [GKS 2018 #F] Common Anagrams
[GKS 2018 #F] Common Anagrams
题目描述
Ayla 有两个字符串 和 ,长度均为 ,每个字符串均由大写英文字母组成。她想知道 中有多少个不同的子串,可以作为 的某个异序词子串出现。更正式地说,她想要统计不同的有序对 的数量,其中 ,使得 中从第 个字符到第 个字符(包含两端)构成的字符多重集与 中某个长度为 的连续子串的字符多重集相同。
输入格式
输入的第一行给出测试用例的数量 。接下来有 个测试用例。每个测试用例的第一行包含一个整数 ,表示字符串的长度。随后两行各包含一个长度为 的字符串,依次为字符串 和 。
输出格式
对于每个测试用例,输出一行,格式为 Case #x: y,其中 是测试用例编号(从 开始), 是 Ayla 所求的答案,如上所述。
6
3
ABB
BAB
3
BAB
ABB
6
CATYYY
XXXTAC
9
SUBXXXXXX
SUBBUSUSB
4
AAAA
AAAA
19
PLEASEHELPIMTRAPPED
INAKICKSTARTFACTORY
Case #1: 5
Case #2: 6
Case #3: 6
Case #4: 6
Case #5: 10
Case #6: 9
提示
在样例 #1 中,,,。 共有 个子串:
A:子串A在 中(平凡地)是一个异序词。B:子串B在 中(平凡地)是一个异序词。B:子串B在 中(平凡地)是一个异序词。AB:子串AB在 中(平凡地)是一个异序词。BB:在 中不存在对应的异序词子串。ABB:子串BAB在 中是一个异序词。
总共有 个子串在 中存在对应的异序词子串,因此答案为 。
在样例 #2 中,注意它与样例 #1 相同,只是交换了 和 。这导致答案变为 !
在样例 #3 中,注意 中的子串 CAT 在 中有对应的异序词子串 TAC。即使这两个子串在各自的字符串中位于不同位置,该子串仍然被计入。
在样例 #4 中,注意尽管 中的子串 SUB 在 中有多个对应的异序词子串,但它只被计数一次。
在样例 #5 中,注意 的每个子串都在 中有对应的异序词子串,因此答案为 。
限制条件
。
。
小数据集(测试集 1 – 可见)
两个字符串 和 仅由字符 A 和 B 组成。
大数据集(测试集 2 – 隐藏)
无额外限制。
翻译由 DeepSeek V4 Pro 完成