AT_utpc2024_a Array Similarity

Description

長さが等しい数列 $ a=(a_1,a_2,\dots,a_n) $ と $ b=(b_1,b_2,\dots,b_n) $ について、以下が成り立つとき、 $ a $ と $ b $ は**似ている**といいます。 - 任意の $ i=1,2,\dots,n $ について、 $ a_i = \max(a_1,a_2,\dots,a_i) $ が成り立つとき、またそのときに限り、 $ b_i = \max(b_1,b_2,\dots,b_i) $ が成り立つ。 数列 $ (A_1,A_2,\dots,A_N) $ が与えられます。 $ Q $ 個のクエリに答えてください。クエリ $ i $ では整数 $ L_{i,1}, R_{i,1}, L_{i,2}, R_{i,2} $ が与えられるので、数列 $ (A_{L_{i,1}}, A_{L_{i,1} + 1}, \dots, A_{R_{i,1}}) $ と $ (A_{L_{i,2}}, A_{L_{i,2} + 1}, \dots, A_{R_{i,2}}) $ が似ているかどうか答えてください。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N $ $ Q $ $ A_1 $ $ A_2 $ $ \dots $ $ A_N $ $ L_{1,1} $ $ R_{1,1} $ $ L_{1,2} $ $ R_{1,2} $ $ L_{2,1} $ $ R_{2,1} $ $ L_{2,2} $ $ R_{2,2} $ $ \vdots $ $ L_{Q,1} $ $ R_{Q,1} $ $ L_{Q,2} $ $ R_{Q,2} $

Output Format

$ Q $ 行出力せよ。 $ i $ 行目には、数列 $ (A_{L_{i,1}}, A_{L_{i,1} + 1}, \dots, A_{R_{i,1}}) $ と $ (A_{L_{i,2}}, A_{L_{i,2} + 1}, \dots, A_{R_{i,2}}) $ が似ているなら `Yes` を、そうでないなら `No` を出力せよ。

Explanation/Hint

### Sample Explanation 1 $ 1 $ つ目のクエリについて、 $ (3,1,4) $ と $ (4,1,5) $ は似ています。したがって、`Yes` を出力します。 $ 2 $ つ目のクエリについて、 $ (3, 1, 4, 1, 5) $ と $ (9, 2, 6, 5, 3) $ は似ていません。したがって、`No` を出力します。 $ 3 $ つ目のクエリについて、 $ L_{i, 1} = R_{i, 1}, L_{i, 2} = R_{i, 2} $ を満たすクエリが与えられることがある点に注意してください。 $ 4 $ つ目のクエリについて、 $ L_{i, 1} = L_{i, 2}, R_{i, 1} = R_{i, 2} $ を満たすクエリも与えられることがある点に注意してください。 ### Constraints - 入力は全て整数 - $ 1 \leq N \leq 2 \times 10^5 $ - $ 1 \leq Q \leq 2 \times 10^5 $ - $ 1 \leq A_i \leq 10^9 $ - $ 1 \leq L_{i,1} \leq R_{i,1} \leq N $ - $ 1 \leq L_{i,2} \leq R_{i,2} \leq N $ - $ R_{i,1}-L_{i,1} = R_{i,2}-L_{i,2} $