图的存储与出边的排序

Luogu
IDLGB3613
Time1000ms
Memory512MB
DifficultyP2
图论O2优化
给定一个 $n$ 个点 $m$ 条边的有向图 $G$,结点编号从 $1$ 至 $n$。对于 $u = 1, 2, 3, \dots n$,依次完成如下要求: 对于 $u$ 的所有出边(即从 $u$ 出发的边),按照**从小到大**的顺序输出出边所指向的节点编号。 **依次完成**的含义是,先按顺序输出 $u = 1$ 的出边所指向的点的编号,再按顺序输出 $u = 2$ 的出边所指向的点的编号……最后按顺序输出 $u = n$ 的出边所指向的点的编号。 ## Input **本题单测试点内有多组数据**。 数据的第一行是一个整数 $T$,表示数据的组数。 对于每组数据的格式如下: 每组数据的第一行是两个整数,分别表示点的个数 $n$ 和边的个数 $m$。 接下来 $m$ 行,每行两个整数 $u, v$,表示一条由 $u$ 指向 $v$ 的边。 保证每组数据内不存在重边。 ## Output 对于每组数据: 输出 $n$ 行,每行若干个用空格隔开的整数。第 $i$ 行输出节点 $i$ 的出边所指向的节点编号。 **注意,如果一个结点不存在出边,你同样需要输出一个空行**。 [samples] ## Note ### 数据规模与约定: 对于全部的测试点,保证 $1 \leq T, n, m \leq 5 \times 10^5$,但同时各测试点的 $n$ 与 $m$ 之和均不超过 $5 \times 10^5$,即 $\sum n, \sum m \leq 5 \times 10^5$。且 $1 \leq u, v \leq n$,每组数据内不存在重边。 ### 提示 请注意大量读入输出对程序效率造成的影响。
Samples
Input #1
2
3 4
1 3
1 2
3 2
3 1
3 9
1 3
2 3
3 3
1 2
2 2
3 2
1 1
2 1
3 1
Output #1
2 3

1 2
1 2 3
1 2 3
1 2 3
API Response (JSON)
{
  "problem": {
    "name": "图的存储与出边的排序",
    "description": {
      "content": "给定一个 $n$ 个点 $m$ 条边的有向图 $G$,结点编号从 $1$ 至 $n$。对于 $u = 1, 2, 3, \\dots n$,依次完成如下要求:   对于 $u$ 的所有出边(即从 $u$ 出发的边),按照**从小到大**的顺序输出出边所指向的节点编号。 **依次完成**的含义是,先按顺序输出 $u = 1$ 的出边所指向的点的编号,再按顺序输出 $u = 2$ 的出边所指向的点的编",
      "description_type": "Markdown"
    },
    "platform": "Luogu",
    "limit": {
      "time_limit": 1000,
      "memory_limit": 524288
    },
    "difficulty": {
      "LuoguStyle": "P2"
    },
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "LGB3613"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "给定一个 $n$ 个点 $m$ 条边的有向图 $G$,结点编号从 $1$ 至 $n$。对于 $u = 1, 2, 3, \\dots n$,依次完成如下要求:  \n对于 $u$ 的所有出边(即从 $u$ 出发的边),按照**从小到大**的顺序输出出边所指向的节点编号。\n\n**依次完成**的含义是,先按顺序输出 $u = 1$ 的出边所指向的点的编号,再按顺序输出 $u = 2$ 的出边所指向的点的编...",
      "is_translate": false,
      "language": "English"
    }
  ]
}
Full JSON Raw Segments