SZ#G4M24. 【GESP强化 四级】邻接名单

提交1 通过1
通过率100%
时间限制1000ms
内存限制256MiB
    ID: 11207 传统题 1000ms 256MiB 尝试: 1 已通过: 1 难度: 入门 上传者: 标签>GESPGESP强化C++c++编程题二维数组邻接矩阵遍历

题目描述

小婷老师用一个 N×NN\times N 的邻接矩阵 AA 记录一张含 NN 个顶点的简单无向图。若顶点 ii 与顶点 jj 之间有边,则 Aij=1A_{ij}=1,否则为 00。输入保证 Aii=0A_{ii}=0Aij=AjiA_{ij}=A_{ji}

她要把矩阵改写为邻接名单:对每个顶点 ii,按编号从小到大列出所有与它直接相连的顶点。

输入格式

第一行输入整数 NN

接下来 NN 行,每行输入 NN 个整数 AijA_{ij}

输出格式

输出 NN 行。第 ii 行按升序输出所有满足 Aij=1A_{ij}=1 的顶点编号 jj,相邻编号之间用一个空格分隔。若顶点 ii 没有邻点,该行为空行。

4
0 1 1 0
1 0 0 1
1 0 0 0
0 1 0 0
2 3
1 4
1
2
2
0 0
0 0

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

样例解释

  • 样例 1 的每一行中,值为 11 的列号就是该顶点的邻点。
  • 样例 2 展示部分顶点没有邻点时需要输出空行。
  • 样例 3 的图较稠密,每行仍按列号递增输出。

数据范围与约定

  • 2N1002 \le N \le 100
  • Aij{0,1}A_{ij}\in\{0,1\}
  • Aii=0A_{ii}=0,且 Aij=AjiA_{ij}=A_{ji}