RYIP在线题库
首 页   >   习题练习   >   提交
Problem1561--最小路径覆盖

1561: 最小路径覆盖

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 128 MB

【 Description 】

给定有向图 G=(V,E) 。设 P 是 G  的一个简单路(顶点不相交)的集合。如果 V 中每个顶点恰好在 P 的一条路上,则称 P 是 G 的一个路径覆盖。P 中路径可以从 V 的任何一个顶点开始,长度也是任意的,特别地,可以为 0。G 的最小路径覆盖是 G的所含路径条数最少的路径覆盖。
设计一个有效算法求一个有向无环图 G 的最小路径覆盖。

【 Input 】

第 1行有2个正整数n和m 。n 是给定有向无环图 G的顶点数,m是 G GG 的边数。
接下来的 m行,每行有 2个正整数 u 和 v ,表示一条有向边 (i,j) 。

【 Output 】

从第 1行开始,每行输出一条路径。
文件的最后一行是最少路径数。

【 Sample Input 】

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

【 Sample Output 】

1 4 7 10 11
2 5 8
3 6 9
3

【HINT】

1≤n≤200,1≤m≤6000

【 Source/Category 】