1141.cpp
来自「自己的ac代码 在acm.zju.edu.cn 上的题目」· C++ 代码 · 共 66 行
CPP
66 行
#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 + =
减小字号Ctrl + -
显示快捷键?