FZU - 2275Game(KMP)

题目大意就是给Alice和Bob一人一个字符串,每个人每回合可以对自己的字符串进行两种操作中的一种,反转字符串或删除字符串末尾的那个数,字符串删完将变为“0”

正反KMP两次就好了,如果Alice的字符串包含了Bob的字符串或者包含了Bob翻转后的字符串,那么Alice就可以向Bob步步逼近最后取得胜利,注意题目说的是双方任意一人操作后若两人字符串相同则Alice胜利(一开始还看错了以为必须得是Alice操作完才算胜利)

代码

#include
#include
#include
using namespace std;
char t[100005];
char w[100005];
int Next[100005];
int lent,lenw;
void getnext()
{
    Next[0]=Next[1]=0;
    for(int i=1;i


你可能感兴趣的:(FZU - 2275Game(KMP))