#z186. 图的存储练习1-邻接矩阵

图的存储练习1-邻接矩阵

题目描述

给定一个有向图,包含n个顶点和m条边。请先将该图用邻接矩阵的形式存储,然后处理m次询问,每次询问给出两个顶点u和v,请判断从u到v是否存在一条路径(即u是否可达v)。如果可达,输出"yes",否则输出"no"。

输入描述

输入共分为三部分:

  1. 第一行包含两个整数n和m,分别表示图中顶点的数量和边的数量。
  2. 接下来m行,每行包含两个整数u和v,表示存在一条从顶点u到顶点v的有向边。
  3. 接下来一行包含一个整数q,表示询问的次数。
  4. 最后q行,每行包含两个整数s和t,表示一次询问的两个顶点。

输出描述

对于每次询问,输出一行结果。如果从s到t可达,输出"yes",否则输出"no"。

输入样例

3 3
1 2
2 3
3 1
3
1 2
1 3
2 1

输出样例

yes
yes
yes

数据范围

  • 1 ≤ n ≤ 100
  • 1 ≤ m ≤ 1000
  • 1 ≤ q ≤ 1000
  • 1 ≤ u, v, s, t ≤ n