BZOJ3942 [Usaco2015 Feb]Censoring
2015-04-15 22:35
465 查看
维护一个栈。。。如果栈顶出现了要被删除的字符串就全删掉就好了,判断的话。。。kmp就行了
View Code
(p.s. AC600纪念~)
/************************************************************** Problem: 3942 User: rausen Language: C++ Result: Accepted Time:224 ms Memory:11548 kb ****************************************************************/ #include <cstdio> #include <cstring> using namespace std; const int N = 1e6 + 5; char s1 , s2 , s ; int next , a , top; int main() { int i, j, len; gets(s1 + 1), gets(s2 + 1); len = strlen(s2 + 1); for (i = 2, j = next[1] = 0; s2[i]; ++i) { while (j && s2[i] != s2[j + 1]) j = next[j]; if (s2[i] == s2[j + 1]) ++j; next[i] = j; } for (i = 1; s1[i]; ++i) { j = a[top], s[++top] = s1[i]; while (j && s2[j + 1] != s[top]) j = next[j]; if (s[top] == s2[j + 1]) ++j; a[top] = j; if (a[top] == len) top -= len; } s[top + 1] = '\0'; puts(s + 1); return 0; }
View Code
(p.s. AC600纪念~)
相关文章推荐
- bzoj 3942: [Usaco2015 Feb]Censoring【kmp+栈】
- BZOJ[3942][Usaco2015 Feb]Censoring(Silver) KMP
- 【KMP】BZOJ3942-[Usaco2015 Feb] Censoring
- 【BZOJ3942】[Usaco2015 Feb]Censoring【AC自动机 / KMP】
- BZOJ 3942: [Usaco2015 Feb]Censoring
- 【BZOJ 3942】 [Usaco2015 Feb]Censoring kmp
- BZOJ 3942: [Usaco2015 Feb]Censoring
- BZOJ_3942_[Usaco2015 Feb]Censoring_KMP
- [BZOJ 3942] [Usaco2015 Feb] Censoring 【KMP】
- 【bzoj3942】[Usaco2015 Feb]Censoring
- [BZOJ3942] [Usaco2015 Feb]Censoring
- [BZOJ3942][Usaco2015 Feb]Censoring(栈+kmp)
- [Usaco2015 Feb]Censoring(bzoj 3942)
- [BZOJ3942][Usaco2015 Feb]Censoring(栈+kmp)
- 【bzoj 3942】[Usaco2015 Feb]Censoring(栈+kmp)
- bzoj 3942: [Usaco2015 Feb]Censoring
- Bzoj 3942: [Usaco2015 Feb]Censoring(kmp)
- bzoj 3942: [Usaco2015 Feb]Censoring (kmp)
- BZOJ 3942 [Usaco2015 Feb] Censoring
- BZOJ 3942: [Usaco2015 Feb]Censoring KMP