#abc255e. [abc255_e]Lucky Numbers

[abc255_e]Lucky Numbers

問題文

長さ N1N-1 の整数列 S=(S1,S2,ldots,SN1)S = (S_1, S_2, \\ldots, S_{N-1}) および、「ラッキーナンバー」として MM 個の相異なる整数 X1,X2,ldots,XMX_1, X_2, \\ldots, X_M が与えられます。

長さ NN の整数列 A=(A1,A2,ldots,AN)A = (A_1, A_2, \\ldots, A_N) であって、次の条件を満たすものを「良い数列」と呼びます。

すべての i=1,2,ldots,N1i = 1, 2, \\ldots, N-1 について、Ai+Ai+1=SiA_i + A_{i+1} = S_i が成り立つ。

良い数列 AA11 つ選ぶときの、AA の要素のうちラッキーナンバーであるものの個数(すなわち、AiinlbraceX1,X2,ldots,XMrbraceA_i \\in \\lbrace X_1, X_2, \\ldots, X_M \\rbrace となる 11 以上 NN 以下の整数 ii の個数)としてあり得る最大値を求めてください。

制約

  • 2leqNleq1052 \\leq N \\leq 10^5
  • 1leqMleq101 \\leq M \\leq 10
  • \-109leqSileq109\-10^9 \\leq S_i \\leq 10^9
  • \-109leqXileq109\-10^9 \\leq X_i \\leq 10^9
  • X1ltX2ltcdotsltXMX_1 \\lt X_2 \\lt \\cdots \\lt X_M
  • 入力はすべて整数

入力

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

NN MM S1S_1 S2S_2 ldots\\ldots SN1S_{N-1} X1X_1 X2X_2 ldots\\ldots XMX_M

出力

良い数列 AA11 つ選ぶときの、AA の要素のうちラッキーナンバーであるものの個数としてありうる最大値を出力せよ。


入力例 1

9 2
2 3 3 4 -4 -7 -4 -1
-1 5

出力例 1

4

良い数列 AA として A=(3,1,4,1,5,9,2,6,5)A = (3, -1, 4, -1, 5, -9, 2, -6, 5) を選ぶと、AA の要素のうちラッキーナンバーであるものは A2,A4,A5,A9A_2, A_4, A_5, A_944 個となり、これが考えられる中で最大です。


入力例 2

20 10
-183260318 206417795 409343217 238245886 138964265 -415224774 -499400499 -313180261 283784093 498751662 668946791 965735441 382033304 177367159 31017484 27914238 757966050 878978971 73210901
-470019195 -379631053 -287722161 -231146414 -84796739 328710269 355719851 416979387 431167199 498905398

出力例 2

8