这道题经过我反复试验发现,用哈希判重就是TLE,直接用map标记不会超时,感觉是哈希函数设计的不好,如果一位一位去计算确实复杂度有点高,最高可以有15位呢。。
题意不太好懂,意思就是从给定的串中(第三行)遇到a就替换成输入第一行的某个非空子集,遇到b替换成输入第二行的某个非空子集,问是否可以生成第四行的字符串。
我的做法是参考了别人的代码的,就是遇到a就替换成第一行,遇到b就替换成b,然后判断新字符串的子串是否有符合要求的,这样做思路上确实要简单好理解一点。当然还有一种思路就是替换时就替换成子串,那样需要遍历子串,书上也有相应的算法,不难实现。
//12:27
#include
#include
#include
#include