#P0402. [USACO10JAN] Tea Time S

[USACO10JAN] Tea Time S

题目描述

NN1N10001 \leq N \leq 1000)头奶牛,编号为 11NN,每天都会参加一个喝茶时间活动。在喝茶时间活动开始之前,已经有 MM1M20001 \leq M \leq 2000)对奶牛彼此认识(是朋友)。第 ii 对彼此认识的奶牛通过两个不相同的整数 AiA_iBiB_i 给定(1AiN1 \leq A_i \leq N1BiN1 \leq B_i \leq N)。输入数据保证一对奶牛不会出现多次。

在喝茶时间活动中,如果奶牛 ii 和奶牛 jj 有一个相同的朋友奶牛 kk,那么他们会在某次的喝茶活动中认识对方(成为朋友),从而扩大他们的社交圈。

请判断,在喝茶活动举办很久以后(直到没有新的奶牛彼此认识),QQ1Q1001 \leq Q \leq 100)对奶牛是否已经彼此认识。询问 jj 包含一对不同的奶牛编号 XjX_jYjY_j1XjN1 \leq X_j \leq N1YjN1 \leq Y_j \leq N)。

例如,假设共有 1155 号奶牛,我们知道 22 号认识 55 号,22 号认识 33 号,而且 44 号认识 55 号;如下图 (a)。

   2---3           2---3            2---3
    \              |\  |            |\ /|
1    \     -->  1  | \ |    -->  1  | X |
      \            |  \|            |/ \|
   4---5           4---5            4---5
    (a)             (b)              (c)

在某次的喝茶活动中,22 号认识 44 号,33 号认识 55 号;如上图 (b) 所示。接下来的喝茶活动中,33 号认识 44 号,如上图 (c) 所示。

输入格式

• 第一行:三个空格隔开的整数:NNMM,和 QQ

• 第二行到第 M+1M+1 行:第 i+1i+1 行包含两个空格隔开的整数 AiA_iBiB_i,表示第 ii 对彼此认识的奶牛。

• 第 M+2M+2 行到第 M+Q+1M+Q+1 行:第 j+M+1j+M+1 行包含两个空格隔开的整数 XjX_jYjY_j,表示询问 jj

输出格式

• 第 11 行到第 QQ 行:如果第 jj 个询问的两头奶牛认识,第 jj 行输出 Y。如果不认识,第 jj 行输出 N

样例

5 3 3 
2 5 
2 3 
4 5 
2 3 
3 5 
1 5
Y 
Y 
N