递归为什么会只对样例
2025-08-30 17:52:37
发布于:广东
5阅读
0回复
0点赞
#include<bits/stdc++.h>
using namespace std;
string data[50003][2];//子:【0】,父:【1】;
string sf,sf2,now;
int cnt=0;
bool mark=1;
void sos(string lo){
for(int i=0;i<cnt;i++){
if(data[i][0]==lo){
sos(data[i][1]);
}
}
if(mark){
mark=0;
cout<<lo;
}
}
int main(){
while(1){
cin>>sf;
if(sf=="$") break;
sf2="";
for(int i=1;i<=6;i++){
sf2+=sf[i];
}
if(sf[0]=='#'){
now=sf2;
}else if(sf[0]=='+'){
data[cnt][1]=now;
data[cnt++][0]=sf2;
}else{
cout<<sf2<<' ';
sos(sf2);
cout<<endl;
mark=1;
}
}
return 0;
}
这里空空如也
有帮助,赞一个