微信问题

提交数: 129, 通过率: 3.1%, 平均分: 14.73

题目描述:

蒟蒻cjh进入了初中,想要全年级段的n(0<=n<=1000)个同学的所有微信,n个同学的编号为1到n。他可以利用 ‘名片’和‘扫码’获得其他同学的微信,已知cjh本人及每个同学的微信联系人。

cjh可以通过某一个人获得ta的微信上的所有同学(名片方法,花费1个单位时间),也可以花三倍的时间直接获得某人的微信(扫码方法,花费3个单位时间)。

输入格式:

共n+2行。

第一行为n(不包括cjh本人啊);

第二行为cjh刚开始就已经有的微信,共m人(0<=m<=1000);

接下来共n行是,每行第一个数是每个同学自己的编号,后面的若干个数是该同学有的微信人编号( <= 1000)。

输出格式:

共一个数,即需要的最小时间

样例输入:

样例1:
3          //总共有3个人
2;         //cjh刚开始就有2号人的微信
1 2;      //表示1有2的微信
2 1;      //表示2有1的微信
3 0;      //表示3没有任何人的微信

样例2:
3          //总共有3个人
2;         //cjh刚开始就有2号人的微信
1 2;      //表示1有2的微信
2 0;      //表示2没有任何人的微信
3 0;      //表示3没有任何人的微信

样例输出:

样例1:
4

样例2:
6

提示:

题目中微信的关系是单向的,如1有2的微信,不表示2有1的微信,除非同时给出2有1的微信。

样例解释:

cjh通过2号的微信名片获得1号同学微信 花费1时间

cjh通过扫码获得3号同学微信 花费3时间

共4时间

时间限制: 1000ms
空间限制: 256MB

来源: by cjh