求助,5#wa,输出了NO ANSWER!,迭代加深
查看原帖
求助,5#wa,输出了NO ANSWER!,迭代加深
579857
popossible楼主2022/7/22 16:50
#include<bits/stdc++.h>
#define ll long long
using namespace std;
string po[7],lp[7],be,en;//po[]为可被替换成的string,lp[]为替换成的string 
int P=1,ans;
bool flag=0;
void dfs(string s,int step){
	if(step==ans){
		if(s==en) flag=1;
		return;
	}
	for(int i=1;i<=P;i++){
		if(s.find(po[i])!=-1){
			string g=s;
			g.replace(g.find(po[i]),po[i].size(),lp[i]);
			dfs(g,step+1);
		}
	}
}
int main(){
	cin>>be>>en;
	while(cin>>po[P]>>lp[P]) P++;P--;
	for(ans=1;ans<=10;ans++){
		dfs(be,0); 
		if(flag==1) break;
		if(ans==10){
			cout<<"NO ANSWER!";
			return 0;
		}
	}
	cout<<ans;
	return 0;
}
2022/7/22 16:50
加载中...