A167220.[GESP202609 七级]必经之路

普及/提高-

GESP

通过率:0%

时间限制:1.00s

内存限制:512MB

题目描述

给定一张有 nn 个结点 mm 条边的有向图 GGGG 中的结点依次以 1,2,,n1,2,\ldots,n 编号。第 ii 条边(1im1\le i\le m)从结点 uiu_i 指向结点 viv_i

GG 中任一入度为 00 的结点可以作为合法起点,任一出度为 00 的结点可以作为合法终点。

如果 GG 中所有可能的从合法起点到合法终点的路径都会经过结点 uu,则称 uu 是必经点。注意必经点可以为合法起点或合法终点。

请你求出 GG 中所有必经点的编号。

例如,在下图中合法起点有点 11 与点 22,合法终点有点 77 与点 88

(1)            (5)---->(7)
   \            ^  \    ^
    v          /    v  /
    (3)       /     (6)
    ^  \     /         \
   /    v   /           v
(2)---->(4)             (8)

所有合法起点到合法终点的路径为:

  • 134571\to3\to4\to5\to7
  • 1345671\to3\to4\to5\to6\to7
  • 1345681\to3\to4\to5\to6\to8
  • 234572\to3\to4\to5\to7
  • 2345672\to3\to4\to5\to6\to7
  • 2345682\to3\to4\to5\to6\to8
  • 24572\to4\to5\to7
  • 245672\to4\to5\to6\to7
  • 245682\to4\to5\to6\to8

因此必经点有两个,编号分别为 4,54,5

输入格式

第一行,两个正整数 n,mn,m,表示有向图 GG 中的结点数与边数。

接下来 mm 行,每行两个正整数 ui,viu_i,v_i,表示一条从结点 uiu_i 指向结点 viv_i 的有向边。

保证 GG 中至少有一个合法起点,至少有一个合法终点,且至少存在一条从一个合法起点到一个合法终点路径,同时不存在孤立点(即出度和入度都为 00 的点)。

输出格式

第一行,一个整数,表示必经点的数量 kk

如果存在必经点,则第二行从小到大输出 GG 中所有必经点的编号。

输入输出样例

  • 输入#1

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

    输出#1

    2
    4 5
    
  • 输入#2

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

    输出#2

    0
    

说明/提示

数据范围

对于 40%40\% 的测试点,保证 1n1001\le n\le1001m2001\le m\le200

对于所有测试点,保证 1n10001\le n\le10001m20001\le m\le2000。保证 GG 中至少有一个合法起点,至少有一个合法终点,且至少存在一条从一个合法起点到一个合法终点路径,同时不存在孤立点(即出度和入度都为 00 的点)。

输入解题思路,AI测评打分。不知道怎么写?

首页