atcoder#ARC072C. [ARC072E] Alice in linear land

[ARC072E] Alice in linear land

配点 : 900900

問題文

Aliceは数直線の上に住んでいます。今日はある不思議な乗り物に乗って目的地まで行くことを考えました。 はじめ、Aliceは目的地から DD 離れたところにいます。Aliceが乗り物にある数 xx を入力すると、現在地から目的地に向かって xx 進んだところが現在地より目的地に近いとき移動し、そうでないときは動きません。現在地から目的地までの距離が xx 未満のとき、xx 進んだところは目的地を通りすぎていることに注意してください。また、目的地を通り過ぎると進行方向が変わること、進行方向は何度も変わることがあることに注意してください。

Aliceは乗り物に NN 回だけ数を入力し、ii 番目に入力する数は did_i の予定でした。Aliceは入力する予定数の書かれたリストを作っておき、その数を 11 つずつ入力します。

しかしイタズラ好きの魔法使いが現れ、Aliceが NN 回の入力による移動を終えても目的地にたどり着かないよう、リストの数を 11 つだけ書き換えることを考えました。

魔法使いはイタズラの実行のため以下の QQ 個の計画を考えています。

  • qiq_i 回目に入力する数のみをある正整数に変更することで、Aliceが目的地にたどり着かないようにする

QQ 個の計画それぞれが実行可能であるか答えるプログラムを書いてください。

制約

  • 1N51051 \leq N \leq 5*10^5
  • 1Q51051 \leq Q \leq 5*10^5
  • 1D1091 \leq D \leq 10^9
  • 1di109(1iN)1 \leq d_i \leq 10^9(1 \leq i \leq N)
  • 1qiN(1iQ)1 \leq q_i \leq N(1 \leq i \leq Q)
  • di,Dd_i, Dは整数である

入力

入力は以下の形式で標準入力から与えられる。

NN DD

d1d_1 d2d_2 ...... dNd_N

QQ

q1q_1 q2q_2 ...... qQq_Q

出力

ii 番目の計画が実行可能ならYES、そうでないならNOii 行目に出力せよ。

4 10
3 4 3 3
2
4 3
NO
YES

33 番目までの入力でAliceはすでに目的地にたどり着いているため、11 番目の計画の答えはNOです。

例えば、33 番目の入力を 55 にすると、Aliceは以下のような移動をし、目的地にたどり着くことはできないため、22 番目の計画の答えはYESです。

5 9
4 4 2 3 2
5
1 4 2 3 5
YES
YES
YES
YES
YES

もともと入力する予定のままでもAliceは目的地にたどり着けないため、すべての計画は実行可能です。

6 15
4 3 5 4 2 1
6
1 2 3 4 5 6
NO
NO
YES
NO
NO
YES