所以请你说一下你到底是什么意思。。。
我根本不知道你怎么 TLE 的,能不能给一点信息?
by hhce2012 @ 2024-03-30 18:58:40
@[hhc2012](/user/928986)
原来的代码不行```cpp
#include<bits/stdc++.h>
using namespace std;
struct
{
char c,l,r;
} a[30];
void frontf(int k)
{
if(a[k].c!='*')
{
cout<<a[k].c;
int left=0,right=0;
if(a[k].l=='*'&&a[k].r=='*')
{
return;
}
else if(a[k].l=='*')
{
for(int i=1; i<=30; i++)
{
if(a[i].c==a[k].r)
{
right=i;
break;
}
}
}
else if(a[k].r=='*')
{
for(int i=1; i<=30; i++)
{
if(a[i].c==a[k].l)
{
left=i;
break;
}
}
}
else
{
for(int i=1; i<=30; i++)
{
if(a[i].c==a[k].l)left=i;
if(a[i].c==a[k].r)right=i;
if(left>0&&right>0)break;
}
}
if(a[k].l!='*')frontf(left);
if(a[k].r!='*')frontf(right);
}
}
int main()
{
int n;
cin>>n;
for(int i=1; i<=n; i++)
{
getchar();
a[i].c=getchar();
a[i].l=getchar();
a[i].r=getchar();
}
frontf(1);
return 0;
}
```
现在已经AC了
![AC](D:\lyh\code\屏幕截图 2024-04-04 143801.png)
by liyunhe @ 2024-04-04 14:39:32
@[liyunhe](/user/1217201)
```
#include<bits/stdc++.h>
using namespace std;
struct
{
char c,l,r;
} a[30];
void frontf(int k)
{
if(a[k].c!='*')
{
cout<<a[k].c;
int left=0,right=0;
if(a[k].l=='*'&&a[k].r=='*')
{
return;
}
else if(a[k].l=='*')
{
for(int i=1; i<=30; i++)
{
if(a[i].c==a[k].r)
{
right=i;
break;
}
}
}
else if(a[k].r=='*')
{
for(int i=1; i<=30; i++)
{
if(a[i].c==a[k].l)
{
left=i;
break;
}
}
}
else
{
for(int i=1; i<=30; i++)
{
if(a[i].c==a[k].l)left=i;
if(a[i].c==a[k].r)right=i;
if(left>0&&right>0)break;
}
}
if(a[k].l!='*')frontf(left);
if(a[k].r!='*')frontf(right);
}
}
int main()
{
int n;
cin>>n;
for(int i=1; i<=n; i++)
{
getchar();
a[i].c=getchar();
a[i].l=getchar();
a[i].r=getchar();
}
frontf(1);
return 0;
}
```
现在的代码已经AC
![AC](D:\lyh\code\屏幕截图 2024-04-04 143801.png)
by liyunhe @ 2024-04-04 14:43:46