不妨令 表示枚举到第 个位置的时候状态为 其中, 状态是当前是否已满足条件——已出现""的子序列而 状态是当前是否已经出现了字母 发现总共的状态只有 个,记忆化搜索一下即可,每个状态最多只会遍历一次。ps:我本地 爆栈了,交上去居然过了,非常神奇。时间复杂度 #include <bits/stdc++.h> #pragma GCC optimize(3) #pragma comment(linker, "/STACK:1024000000,1024000000") typedef long long ll; using name...