#include<bits/stdc++.h>
using namespace std;
string s,k;
char stk[1000010];
int main(){
cin>>s>>k;
int len=-1,lenk=k.length();
for(int i=0;i<s.length();i++){
stk[++len]=s[i];
while(stk[len]==k[lenk-1]){
int flag=1;
for(int j=0;j<lenk;j++) if(stk[len-lenk+j+1]!=k[j]){flag=0;break;}
if(flag) len-=lenk;
}
}
len++;
if(len==0) cout<<"FRULA";
else for(int i=0;i<len;i++) cout<<stk[i];
}
#include<bits/stdc++.h>
using namespace std;
string s,k;
char stk[1000010];
int main(){
cin>>s>>k;
int len=-1,lenk=k.length();
for(int i=0;i<s.length();i++){
stk[++len]=s[i];
while(stk[len]==k[lenk-1]){
int flag=1;
for(int j=0;j<lenk;j++) if(!stk[len-lenk+j+1]==k[j]){flag=0;break;}
if(flag) len-=lenk;
}
}
len++;
if(len==0) cout<<"FRULA";
else for(int i=0;i<len;i++) cout<<stk[i];
}
区别在第十二行,第二份可以运行,但是第一份代码改成 != 为什么就时间超限运行不了了???蒟蒻求助,希望大佬能解释一下