关于本地跑正确而在落谷过不了的问题
查看原帖
关于本地跑正确而在落谷过不了的问题
569087
passing_dragon楼主2021/10/24 16:45
#include<iostream>
#include<algorithm>
#include<cstring>
#include<cstdlib>
#include<cstdio>
using namespace std;
//char mid[100], endd[100];
string mid, endd;
typedef struct Node{
	char date;
	Node* lchild;
	Node* rchild;
}node,*Bnode;
void preout(Bnode root)
{
	if(root)
	{
		cout<<root->date;
		preout(root->lchild);
		preout(root->rchild);
	}
}
node* creatree(int mid1, int mid2, int end1, int end2)
{
	node* root = (node* )malloc(sizeof(node));
	if(!root) exit(0);
	root->date = endd[end2];
	int present = 0;
	for(int i = mid1; i <= mid2; i++)
	{
		if(mid[i] == endd[end2])
		present = i;
	}
	if(present == mid1)
	root->lchild = NULL;
	else if(present > mid1)
	root->lchild = creatree(mid1, present - 1, end1, end1 + present - mid1 - 1);
	if(present == mid2)
	root->rchild = NULL;
	else if(present < mid2)
	{
		root->rchild = creatree(present + 1, mid2,end2 + present - mid2,end2 - 1);
	}
	return root;
}
int main()
{
//	memset(mid,0,sizeof(0));
//	memset(endd,0,sizeof(0));
	getline(cin,mid);
	getline(cin,endd);
	node* root = (node* )malloc(sizeof(node));
	root = creatree(0,mid.size() - 1,0,endd.size() - 1);
	preout(root);
	cout<<endl;
}

我把测试点下下来跑了能过然而落谷wa是为什么,求助

2021/10/24 16:45
加载中...