POJ T2255 Tree Recovery

版权声明:希望能帮到弱校的ACMer成长,因为自己是弱校菜鸡~~~~ https://blog.csdn.net/Mr__Charles/article/details/82655946

                                 POJ T2255 Tree Recovery


题解:

    在纸上模拟建树过程,找出下标之间的关系,推出递推公式即可

 

代码:

#include<cstdio> 
#include<iostream>
#include<cstring>
using namespace std;
const int MAXN = 27;


void build(int n,char *pre,char *in){
	if(n == 0) return;
	int pos = strchr(in,pre[0]) - in;
	
	build(pos,pre+1,in);
	printf("%c",pre[0]);
	build(n-pos-1,pre+pos+1,in+pos+1);
}

int main(){
	char pre[MAXN],in[MAXN];
	while(~scanf("%s%s",pre,in)){
		int n = strlen(pre);
		build(n,pre,in);
		printf("\n");
	}
	return 0;
}

猜你喜欢

转载自blog.csdn.net/Mr__Charles/article/details/82655946