社区讨论
这个报错是什么情况,求助大佬!
P1032[NOIP 2002 提高组] 字串变换(疑似错题)参与者 2已保存回复 2
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 2 条
- 当前快照
- 1 份
- 快照标识符
- @lo2fvhdz
- 此快照首次捕获于
- 2023/10/23 13:10 2 年前
- 此快照最后确认于
- 2023/10/23 13:10 2 年前
CPP
#include<bits/stdc++.h>
using namespace std;
struct node{
string s;
int t;
};
int ans;
string c[6],d[6];
int czhao(string a,string b){
int qflag=-1;
for(int i=0;i<a.size();i++){
string c;
if(a[i]==b[0]){
for(int j=i;j<i+b.size()&&j<a.size();j++)
c+=a[j];
if(c==b)qflag=i;
}
}
return qflag;
}
int main(){
queue<node>p;
string a,b;
cin>>a>>b;
node F={a,0};
p.push(F);
while(!p.empty()){
node N=p.front();
p.pop();
if(ans<6){
cin>>c[ans]>>d[ans];
ans++;
}
for(int i=0;i<ans-1;i++){
string e="";
if(czhao(N.s,c[i])>=0){
for(int j=0;j<czhao(N.s,c[i]);j++)
e+=c[i][j];
e+=d[i];
for(int j=czhao(N.s,c[i])+c[i].size();j<N.s.size();j++)
e+=c[i][j];
node N={e,N.t+1};
p.push(N);
break;
}
}
node E=p.front();
if(E.t>10){
cout<<"NO ANSWER!";
return 0;
}
else {
if(E.s==b){
cout<<E.t;
return 0;
}
}
}
return 0;
}
terminate called after throwing an instance of 'std::length_error'
what(): basic_string::_M_create
回复
共 2 条回复,欢迎继续交流。
正在加载回复...