求助!没输出祖先
  • 板块P2814 家谱
  • 楼主sxjsxj
  • 当前回复0
  • 已保存回复0
  • 发布时间2023/9/17 11:00
  • 上次更新2023/11/2 19:51:23
查看原帖
求助!没输出祖先
1005753
sxjsxj楼主2023/9/17 11:00
#include<iostream>
using namespace std;
string s[50001];
int f[50001];
int i,j,s1=0;
int find(int x)
{
	if(f[x]!=x)
		f[x]=find(f[x]);
	return f[x];
}
main()
{
    ios::sync_with_stdio(0);
    cin.tie(0);cout.tie(0);
    while(cin>>s[++s1] && s[s1][0]!='$');
    s1--;
    for(i=1;i<=s1;i++)
    {
    	if(s[i][0]=='#')
    		f[i]=i;
    	else if(s[i][0]=='+')
    	{
    		j=i;
    		while(s[j][0]!='+')
    			j--;
    		f[j]=f[i];
		}
		else
		{
			for(j=1;j<=s[i].size();j++)
				cout<<s[i][j];
			cout<<" "<<s[find(f[i])]<<'\n';
		}
	}
}
2023/9/17 11:00
加载中...