Mirror Temple
题号:NC207761
时间限制:C/C++/Rust/Pascal 3秒,其他语言6秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

Madeline来到了镜之寺庙(Mirror Temple),镜之寺庙有很多红色的泡泡,可以通过这个红色泡泡穿梭到同一横坐标或者同一纵坐标的相邻红色泡泡。
为了简化模型,限定红色泡泡都在一个大小为的二维空间内。总共有个红色泡泡,第个泡泡的位置是在(x_i,y_i)。保证每两个红色泡泡都不在同一个位置,即对于所有或者
现在有个询问,第个是询问若Madeline一开始在第个红色泡泡中,能不能通过一次或多次穿梭到达第个红色泡泡中。(

输入描述:

第一行两个个整数,代表总共有的红色泡泡的数量和询问的总数。(
接下来行每行两个整数x_iy_i代表第i个泡泡的位置。(
再接下来行每行两个整数表示询问的是第个球和第个球。(

输出描述:

对于每一个询问,如果可以到达输出YES,否则输出NO。
示例1

输入

复制
4 3
1 1000
1000 1
1000 1000
5 2
1 2
2 3
2 4

输出

复制
YES
YES
NO

备注:

输入的数据量很大,C++选手建议使用scanf代替cin,Java选手建议自己写一个输入流代替Scanner。