CF1252C.Even Path

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Pathfinding is a task of finding a route between two points. It often appears in many problems. For example, in a GPS navigation software where a driver can query for a suggested route, or in a robot motion planning where it should find a valid sequence of movements to do some tasks, or in a simple maze solver where it should find a valid path from one point to another point. This problem is related to solving a maze.

The maze considered in this problem is in the form of a matrix of integers AA of N×NN \times N . The value of each cell is generated from a given array RR and CC of NN integers each. Specifically, the value on the ithi^{th} row and jthj^{th} column, cell (i,j)(i,j) , is equal to Ri+CjR_i + C_j . Note that all indexes in this problem are from 11 to NN .

A path in this maze is defined as a sequence of cells (r1,c1),(r2,c2),,(rk,ck)(r_1,c_1), (r_2,c_2), \dots, (r_k,c_k) such that riri+1+cici+1=1|r_i - r_{i+1}| + |c_i - c_{i+1}| = 1 for all 1i<k1 \le i < k . In other words, each adjacent cell differs only by 11 row or only by 11 column. An even path in this maze is defined as a path in which all the cells in the path contain only even numbers.

Given a tuple ra,ca,rb,cb\langle r_a,c_a,r_b,c_b \rangle as a query, your task is to determine whether there exists an even path from cell (ra,ca)(r_a,c_a) to cell (rb,cb)(r_b,c_b) . To simplify the problem, it is guaranteed that both cell (ra,ca)(r_a,c_a) and cell (rb,cb)(r_b,c_b) contain even numbers.

For example, let N=5N = 5 , R={6,2,7,8,3}R = \{6, 2, 7, 8, 3\} , and C={3,4,8,5,1}C = \{3, 4, 8, 5, 1\} . The following figure depicts the matrix AA of 5×55 \times 5 which is generated from the given array RR and CC .

Let us consider several queries:

  • 2,2,1,3\langle 2, 2, 1, 3 \rangle : There is an even path from cell (2,2)(2,2) to cell (1,3)(1,3) , e.g., (2,2),(2,3),(1,3)(2,2), (2,3), (1,3) . Of course, (2,2),(1,2),(1,3)(2,2), (1,2), (1,3) is also a valid even path.
  • 4,2,4,3\langle 4, 2, 4, 3 \rangle : There is an even path from cell (4,2)(4,2) to cell (4,3)(4,3) , namely (4,2),(4,3)(4,2), (4,3) .
  • 5,1,3,4\langle 5, 1, 3, 4 \rangle : There is no even path from cell (5,1)(5,1) to cell (3,4)(3,4) . Observe that the only two neighboring cells of (5,1)(5,1) are cell (5,2)(5,2) and cell (4,1)(4,1) , and both of them contain odd numbers (7 and 11, respectively), thus, there cannot be any even path originating from cell (5,1)(5,1) .

输入格式

Input begins with a line containing two integers: NN QQ ( 2N1000002 \le N \le 100\,000 ; 1Q1000001 \le Q \le 100\,000 ) representing the size of the maze and the number of queries, respectively. The next line contains NN integers: RiR_i ( 0Ri1060 \le R_i \le 10^6 ) representing the array RR . The next line contains NN integers: CiC_i ( 0Ci1060 \le C_i \le 10^6 ) representing the array CC . The next QQ lines each contains four integers: rar_a cac_a rbr_b cbc_b ( 1ra,ca,rb,cbN1 \le r_a, c_a, r_b, c_b \le N ) representing a query of ra,ca,rb,cb\langle r_a, c_a, r_b, c_b \rangle . It is guaranteed that (ra,ca)(r_a,c_a) and (rb,cb)(r_b,c_b) are two different cells in the maze and both of them contain even numbers.

输出格式

For each query in the same order as input, output in a line a string "YES" (without quotes) or "NO" (without quotes) whether there exists an even path from cell (ra,ca)(r_a,c_a) to cell (rb,cb)(r_b,c_b) .

输入输出样例

  • 输入#1

    5 3
    6 2 7 8 3
    3 4 8 5 1
    2 2 1 3
    4 2 4 3
    5 1 3 4
    

    输出#1

    YES
    YES
    NO
    
  • 输入#2

    3 2
    30 40 49
    15 20 25
    2 2 3 3
    1 2 2 2
    

    输出#2

    NO
    YES
    

说明/提示

Explanation for the sample input/output #1

This is the example from the problem description.

首页