📄 1141.cpp
字号:
#include<iostream>
using namespace std;
struct node
{
int d,f;
};
node p[1000000];
int ans[1000000];
int main()
{
int i,j,k;
int n,m;
int a,b,d;
char c;
int tot;
while(cin>>n)
{
tot=0;
for(i=1;i<=n;i++)ans[i]=0;
for(i=1;i<=n;i++)
{
cin>>a>>c>>c>>b>>c;
if(i==1)
{
p[a].f=a;
p[a].d=1;
}
for(j=1;j<=b;j++)
{
cin>>d;
p[d].f=a;
p[d].d=p[a].d+1;
}
}
cin>>m;
for(i=1;i<=m;i++)
{
cin>>c;
cin>>a;
cin>>c;
cin>>b;
cin>>c;
while(a!=b)
{
if(p[a].d>p[b].d)a=p[a].f;
if(p[a].d<p[b].d)b=p[b].f;
if(p[a].d==p[b].d && a!=b){a=p[a].f;b=p[b].f;}
}
ans[a]++;
}
for(i=1;i<=n;i++)
{
if(ans[i]!=0)
cout<<i<<":"<<ans[i]<<endl;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -