2 annivddfdersewwefary nniversarya
YES NO
pid=5311
题目大意:问在一个字符串里能不能找到连续三个区间拼成anniversary
题目分析:暴力,枚举每段的长度
#include <cstdio> #include <cstring> char s[200], con[] = "anniversary"; int main() { int T; scanf("%d", &T); while(T--) { scanf("%s", s); int len = strlen(s); bool flag = false; for(int i = 0; i <= 8; i++) { for(int j = i + 1; j <= 9; j++) { int k = 0; while(k < len && strncmp(con, s + k, i + 1) != 0) k ++; if(k == len) break; k += i + 1; while(k < len && strncmp(con + i + 1, s + k, j - i) != 0) k ++; if(k == len) break; k += j - i; while(k < len && strncmp(con + j + 1, s + k, 10 - j) != 0) k ++; if(k != len) { flag = true; break; } } } if(flag) puts("YES"); else puts("NO"); } }
HDU 5311 Hidden String (优美的暴力)
原文:http://www.cnblogs.com/mthoutai/p/6898597.html