统计患病人数
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

又是一年冬季,流感病毒在人群中传播,现在写一个程序,统计某公司感染病毒情况。该公司一共有x1<=x<=10000)个人,他们的编号为0x-1,现在假设编号为n0<=n<=x-1)的员工为初始感染者(初始感染者有且只有一位),现在该公司有m(1<=m<=50)个部门。且每个部门有z(1<=z<=200)个人(同一个人可能在多个部门任职)。患者n所在的组织所有人都会感染病毒,且会传染给其他人。输出共一行先输出一共感染了多少人,接着以空格分割感染病毒的员工编号,员工编号要求升序输出。


输入描述:

第一行输入x,n,m用空格分隔
接下来的m行中,每行左边第一个整数为z,输入整数z过后,再输入z个整数

输出描述:

输出只有一行,左边第一个整数为病毒感染人数,输出感染病毒人数后再输出感染者
示例1

输入

复制
100 4 3
3 1 2 3
5 6 8 1 9 7
3 4 7 12

输出

复制
9 1 2 3 4 6 7 8 9 12

说明

1、输入:

100 4 3表示该公司一共有100个人,编号为4的员工为唯一的初始感染者,公司一共三个部门。

3 1 2 3表示第一个部门有3个人,编号依次为1,2,3

5 6 8 1 97表示第二个部门有5个人,编号依次为6,8,1,9,7

3 4 7 12表示第三个部门有3个人,编号依次为4,7,12

2、输出:

编号为4的员工感染了第三个部门,即现在的感染者为4,7,12.

编号为7的员工感染了第二个部门,现在的感染者为6,8,1,9,4,7,12

编号为1的员工感染了第一个部门,现在的感染者为2,3,6,8,1,9,4,7,12

因此感染数9,即有9个员工被感染流感病毒,升序分别为1,2,3,4,6,7,8,9,12