効率的な探索(★★★)

2 secs 1024 MB
aiblecode's icon aiblecode

問題文

長さ NN の整数列 A=(A1,A2,,AN)A = (A_1, A_2, \cdots, A_N) が与えられます。ここで、与えられる AAA1A2ANA_1 \leqq A_2 \leqq \cdots \leqq A_N を満たします。

QQ 個の質問が与えられるので、それぞれについて答えてください。kk 番目 (k=1,2,,Q)(k = 1, 2, \cdots, Q) の問題は以下の通りです。

  • AA の中で XkX_k 以下の整数の個数を求めてください。

制約

  • 入力はすべて整数
  • 1N2×1051 \leqq N \leqq 2 \times 10^5
  • 1Q1041 \leqq Q \leqq 10^4
  • 1A1A2AN1091 \leqq A_1 \leqq A_2 \leqq \cdots \leqq A_N \leqq 10^9
  • 1Xk1091 \leqq X_k \leqq 10^9

入力

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

NNQQ
A1A_1A2A_2\ldotsANA_N
X1X_1
X2X_2
\vdots
XQX_Q

出力

標準出力に QQ 行出力してください。
kk 行目 (k=1,2,,Q)(k = 1, 2, \cdots, Q) には kk 番目の質問の答えを出力してください。

サンプル 1

入力
8 3
2 3 5 7 11 13 17 19
6
13
1
出力
3
6
0

例えば、11 番目の質問について、 AA の中で 66 以下の整数は 2,3,52, 3, 533 個存在します。
よって 11 行目に 33 を出力します。

サンプル 2

入力
10 5
1 22 22 333 333 333 4444 4444 4444 4444
1
22
333
4444
999999999
出力
1
3
6
10
10

Submit


Go (1.21)