社区讨论
80pts WA on #5 求调
P1032[NOIP 2002 提高组] 字串变换(疑似错题)参与者 2已保存回复 1
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 1 条
- 当前快照
- 1 份
- 快照标识符
- @m69cw97b
- 此快照首次捕获于
- 2025/01/23 21:16 去年
- 此快照最后确认于
- 2025/11/04 10:47 4 个月前
rt
CPP#include<bits/stdc++.h>
using namespace std;
string a,b,aa[10],bb[10],s,ns;
queue<string>q;
queue<int>qn;
map<string,bool>mp;
int main()
{
cin>>a>>b;
int n=0,ans,f;
while(cin>>aa[++n]>>bb[n]);
n--;
q.push(a);
qn.push(1);
while(!q.empty())
{
s=q.front();
q.pop();
ans=qn.front();
qn.pop();
for(int j=1;j<=n;j++)
{
f=s.find(aa[j],0);
if(f!=-1)
{
ns=s;
ns.erase(f,aa[j].length());
ns.insert(f,bb[j]);
if(ns==b)
{
cout<<ans;
return 0;
}
if(ans==10)
{
cout<<"NO ANSWER!";
return 0;
}
if(mp[ns])continue;
mp[ns]=1;
q.push(ns);
qn.push(ans+1);
}
}
}
cout<<"NO ANSWER!";
return 0;
}
回复
共 1 条回复,欢迎继续交流。
正在加载回复...