Educational Codeforces Round 82

E

https://codeforces.com/contest/1303/problem/E

T组测试

t和s是字符串

s中能否找两个不共用下标的子序列(不要求连续),t=concat(s1,s2)

范围

T<=100

|s|,|t| <= 400

提解

枚举t的分割位置

dfs(s中当前匹配位置i,t前段匹配位置j,t后半匹配位置k)

很明显超时。

注意到上面dfs仅返回true/false

也就是dfs(i,j,k)=1/0这种

可以改为(也有贪心关系),dp[i][j]=最多匹配的k

总结

dfs(i,j,k)=1/0可以考虑 dp[i][j]=max/min(k)