递归输出错误
查看原帖
递归输出错误
1234561
uclzjh楼主2024/5/18 12:23

rt

#include <bits/stdc++.h>
using namespace std;
string z,h;


void dfs(string mid,string beh) {
	string lz,rz,lh,rh;
	if(mid.size()==0) return;
	for(int i = 0;i < mid.size();i++) {
		if(mid[i]==beh[mid.size()-1]) {
			
			cout << beh[mid.size()-1];
			for(int j = 0; j < i - 1; j++) {
				lz+=mid[j];
				lh+=beh[j];
			}
			
			for(int k = i + 1; k < mid.size();k++) {
				rz+=mid[k];
			}
			for(int p = lh.size(); p < mid.size()-1;p++) {
				rh+=beh[p];
			}
			dfs(lz,lh);
			dfs(rz,rh);
		}
	} 
}

int solve() {
	cin >> z >> h;
	dfs(z,h);
} 

int main() {
	solve();
	return 0;
}
2024/5/18 12:23
加载中...