LADDER


Submit solution

Points: 100
Time limit: 1.0s
Memory limit: 493M

Problem type

Một dãy b gồm k phần tử b1, b2, b3… bk được gọi là dãy bậc thang nếu tồn tại một vị trí x (1 ≤ x ≤ k) sao cho b1 ≤ b2 ≤ … ≤ bx ≥ b(x + 1) ≥ b(x + 2) … ≥ bk. Bạn được cho một a mảng gồm n phần từ được đánh số từ 1 đến n. Xét một dãy con liên tiếp từ vị trí l đến r của mảng a, bạn cần kiểm tra xem dãy con đó có phải dãy bậc thang hay không.

Yêu cầu: Cho mảng a gồm n phần tử nguyên dương và m cặp vị trí l, r cần kiểm tra. Với mỗi cặp vị trí hãy kiểm tra xem dãy con đó có phải là dãy bậc thang hay không.

Dữ liệu:

  • Dòng đầu tiên chứa hai số nguyên n, m (1 ≤ n, m ≤ 10^5)

  • Dòng thứ hai chứa n số nguyên ai(1 ≤ ai ≤ 10^9)

  • m dòng tiếp theo mỗi dòng chứa cặp số nguyên l và r (1 ≤ l ≤ r ≤ n) cần kiểm tra.

Kết quả:

gồm m dòng tương ứng với m cặp vị trí cần kiểm tra, với mỗi dòng ghi ra Yes nếu dãy cần kiểm tra là dãy bậc thang và ghi ra No nếu đấy không phải là dãy bậc thang.

Sample Input

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

Sample Output

Yes
Yes
No
Yes
No
Yes

Comments

There are no comments at the moment.