ural 1106 Two Teams

时间:2023-03-09 20:09:54
ural 1106 Two Teams

http://acm.timus.ru/problem.aspx?space=1&num=1106

 #include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std; bool g[][];
int vis[];
int main()
{
int n;
scanf("%d",&n);
int a;
memset(g,false,sizeof(g));
for(int i=; i<=n; i++)
{
scanf("%d",&a);
while()
{
if(a==) break;
g[i][a]=true;
g[a][i]=true;
scanf("%d",&a);
}
}
int t=;
memset(vis,,sizeof(vis));
for(int i=; i<=n; i++)
{
if(!vis[i])
{
vis[i]=;
t++;
for(int j=; j<=n; j++)
{
if(g[i][j])
{ vis[j]=;
}
}
}
}
printf("%d\n",t);
int t1=;
for(int i=; i<=n; i++)
{
if(vis[i]==)
{
t1++;
if(t1==t)
printf("%d\n",i);
else printf("%d ",i);
}
}
return ;
}