A93181.「NOI2024」树形图

NOI/NOI+/CTSC

NOI

通过率:0%

时间限制:3.00s

内存限制:512MB

题目描述

给定一个 nn 个点 mm 条边的简单有向图 GG,顶点从 11nn 编号。其中简单有向图的定义为不存在重边与自环的有向图。

定义顶点 rr 是有向图 GG 的根当且仅当对于 1kn1\leq k\leq n,顶点 rr 到顶点 kk 存在恰好一条有向简单路径,其中简单路径的定义为不经过重复点的路径

定义每个点的种类如下:

  • 若顶点 rr 是图 GG 的根,则称顶点 rr 为图 GG一类点
  • 若顶点 rr 不是图 GG 的一类点,且存在一种删边的方案,使得图 GG 在删去若干条边后得到的图 GG' 满足:所有图 GG 中的一类点都是 GG' 的根,且顶点 rr 也是图 GG' 的根,则称顶点 rr 为图 GG二类点
  • 若顶点 rr 不满足上述条件,则称顶点 rr 为图 GG三类点

根据上述定义,图 GG 的每个点都恰好属于一类点,二类点,三类点之一。你需要判断点 1n1\sim n 分别属于这三个种类中的哪一种。

输入格式

从文件 graphee.in 中读入数据。

本题有多组测试数据。

输入的第一行包含一个非负整数 cc,表示测试点编号。c=0c=0 表示该测试点为样例。

输入的第二行包含一个正整数 tt,表示测试数据组数。

接下来依次输入每组测试数据,对于每组测试数据:

输入的第一行包含两个正整数 n,mn,m,分别表示有向图的点数和边数。

接下来 mm 行,每行包含两个正整数 u,vu,v,表示一条从 uuvv的有向边。保证 1u,vn1\leq u,v\leq n,且给定的有向图 GG 不存在重边与自环。

输出格式

输出到文件 graphee.out 中。

对于每组数据,输出一行包含一个长度恰好为 nn 的字符串 ss 表示每个点的种类。其中 si=1s_i=1 表示点 ii一类点si=2s_i=2 表示点 ii二类点si=3s_i=3 表示点 ii三类点

输入输出样例

  • 输入#1

    0
    2
    4 7
    2 1
    4 1
    1 4
    2 3
    3 4
    2 4
    4 3
    4 5
    1 2
    2 3
    2 4
    3 1
    4 3

    输出#1

    3233
    2211
首页