#P9150. 邮箱题

    ID: 7351 Type: RemoteJudge 3000ms 512MiB Tried: 0 Accepted: 0 Difficulty: 6 Uploaded By: Tags>图论洛谷原创O2优化强连通分量,缩点洛谷月赛均摊分析

邮箱题

题目背景

邮箱,一种历史悠久的接信箱子。西方的邮箱以红色为主,东方的邮箱以绿色为主。

题目描述

有一张 nn 个点和 mm 条边构成的有向图。每个点内都有一把另一个点的钥匙,ii 号点内有 kik_i 号点的钥匙。你能进入一个点当且仅当你有该点的钥匙。保证 kik_i 构成排列。

只要进入了一个点,就获得了这个点内有的钥匙。一旦获得钥匙就不会被消耗。

现在你拿到了 ii 号点的钥匙并到了 ii 号点。你需要对每个 ii 求出:

  1. 有多少点能被你到达。
  2. 有多少点能被你到达并返回起点 ii

请注意:给出的边均是有向边!

输入格式

本题有多组数据。

第一行,一个正整数 TT,表示数据的组数。对于每组数据:

第一行,两个整数 n,mn,m,表示图的点数和边数。

第二行,nn 个整数 k1,k2,,knk_1, k_2, \ldots, k_n,表示 ii 号点内有 kik_i 号点的钥匙。保证 kik_i 构成排列。

接下来 mm 行,每行两个整数 x,yx, y,表示图上的一条从 xx 指向 yy 的有向边。保证不含重边或自环。

输出格式

对于每组数据,输出 nn 行,每行两个整数,第 ii 行的整数分别表示从 ii 号点出发,能到达的点数和能到达并返回起点的点数。

3
4 5
2 3 4 1
1 2
2 3
3 1
1 4
4 3
5 6
2 3 4 5 1
1 2
2 3
3 4
4 5
5 2
4 1
3 2
2 3 1
1 2
1 3

4 4
2 1
1 1
1 1
5 5
5 5
3 1
2 1
1 1
2 1
1 1
1 1

提示

【样例解释】

以下是第一组数据的解释:(图中括号内的内容为点上的钥匙编号)

  1. 11 能到达的结点集合为 {1,2,3,4}\{1,2,3,4\}11 能到达且能返回 11 的结点集合为 {1,2,3,4}\{1,2,3,4\}
  2. 22 能到达的结点集合为 {2,3}\{2,3\}22 能到达且能返回 22 的结点集合为 {2}\{2\}
  3. 33 能到达的结点集合为 {3}\{3\}33 能到达且能返回 33 的结点集合为 {3}\{3\}
  4. 44 能到达的结点集合为 {4}\{4\}44 能到达且能返回 44 的结点集合为 {4}\{4\}

这是一个合法的遍历过程:从 11 开始,初始钥匙为 22,到达结点 22 并获得钥匙 33,到达结点 33 并获得钥匙 44,回到结点 11,到达结点 44 并获得钥匙 11,到达结点 33,回到结点 11

【数据范围】

对于 100%100\% 的数据,满足 n3n \ge 3m0m\ge 0n1.5×106\sum n\le 1.5\times{10}^6m3×106\sum m\le 3\times{10}^61T2×1041 \le T\le 2\times{10}^41x,yn1 \le x, y \le n,保证图中不含重边或自环。

本题采用捆绑测试且开启子任务依赖!

子任务 nn 的约束 mm 的约束 分值 依赖
1 n6n\le 6 m12m\le 12 2020 \
2 n3107\sum n^3\le {10}^7 m32×107\sum m^3\le 2\times {10}^7 2525
3 n2108\sum n^2\le {10}^8 m2108\sum m^2\le {10}^8 子任务 1、2
4 3030 子任务 1、2、3