• 2024-07-21P4824 [USACO15FEB] Censoring S
    原题链接题解手写栈存放已经匹配过的位置和每个位置匹配的进度,每次匹配成功就回溯,相当于删除子串code#include<bits/stdc++.h>#definelllonglongusingnamespacestd;intcon[1000006],pre[1000006]={0},st[1000006]={0};voidsolve(){strings1,s2;cin>>s
  • 2024-06-10P4824 [USACO15FEB] Censoring S
    题目链接:https://www.luogu.com.cn/problem/P4824kmp+栈栈处理字符串问题有一道入门题:https://www.luogu.com.cn/problem/AT_abc328_d实际上处理方式就是用数组模拟栈.在遍历字符串的过程中我们时刻监测,对未达到条件的字符我们进行压栈操作,然后如果说遇到了符合条件的字符
  • 2024-05-03Censoring S(板子)
    题目描述原题来自:USACO2015Feb.Silver给出两个字符串和,每次从前往后找到的一个子串并将其删除,空缺位依次向前补齐,重复上述操作多次,直到串中不含串。输出最终的串。输入格式第一行包含一个字符串,第二行包含一个字符串。样例输入whatthemomooofun
  • 2024-01-24Censoring S
    利用KMP和双端队列这一道题目中间会删除字符,考虑到这种动态的过程我们一般会用链表,栈或者队列维护这里为了方便最后的输出用双端队列考虑KMP的过程,他其实对字符串是不是在连续的一个存储空间里并没有要求,也就是说,如果我们给了一堆字符,即使不是按照字符数组那种放在连续的存储空
  • 2023-09-24P4824 [USACO15FEB] Censoring S
    P4824[USACO15FEB]CensoringSKMP+栈同样的套路,先找B的最长前后缀,然后与A匹配不同的是要删除A中的B,特殊的是删除之后可能会产生新的B那我们可以利用栈的思想,利用f数组,记录A每一位置上B的匹配程度,这样删除时,直接回到上一个匹配程度,以防漏掉。利用栈记录下标,还在栈内的,说明
  • 2023-08-12做题记录:P3121 [USACO15FEB] Censoring G
    题目传送门:clickhere题意简化:给定一个文本串,和n个匹配串,删掉文本串中的匹配串求最后的字符串做这题之前应该先做简化版:eazymode上面这题用kmp+栈就能过以前如果用的是\(erase\)函数是错解,字符串的\(erase\)时间复杂度是常数级别的看到这道题后非常的高兴,直接打了个爆力跳