[POI2000]滑雪队

Grade 0 Open Time Tuesday, 22 January 2013, 10:45 am
Discount 0.8 Time Discount Tuesday, 22 January 2013, 10:45 am
Allow late Yes Close Time Tuesday, 22 January 2013, 10:45 am
Input file nar.in Output file nar.out

一个滑雪队在Byte山上组织了一次训练。山的北坡有一个滑雪场,所有的滑雪者都要从山上的起点站滑到山下的终点站。此次训练中各队员同时出发到终点站会合,除了始末两处外,队员们的滑雪路径不能相交,且山上的滑雪道只能从上往下滑。

滑雪道的分布地图由多块被林地连接的空地组成,每块空地都处于不同的高度。两块空地间至多由一块林地连接。滑雪过程中,滑雪者可以选择路径访问任一空地(但不必全部经过)。各滑雪道只在空地相会,既不穿隧道,也不临空飞越。

任务:

编写一个程序完成下列工作:

  • 读入滑雪场的地图;
  • 算出能参加训练的最大队员数;
  • 把结果写入文件。

输入:

文件的第一行是空地的数目n,2≤n≤5000。以下n-1行,每行都有一些用空格分开的整数,第(i+1)行的数字描述的是从空地i沿林 地往下可到达的其它空地。该行第一个整数k表示这些空地的个数,以下k个整数即它们的编号,按从东到西的顺序排列(即通向各空地的林地的位置)。空地从1 到n编号。起点站建于空地1,终点站建于空地n。

输出:

仅一行,包括一个整数,即能参加训练的最大人数。

输入样例:

15
5 3 5 9 2 4
1 9
2 7 5 
2 6 8
1 7
1 10
2 14 11
2 10 12
2 13 10
3 13 15 12
2 14 15
1 15
1 15
1 15

输出样例:

3

如下图

Image:Nar.png