atcoder#ABC289G. [ABC289G] Shopping in AtCoder store

[ABC289G] Shopping in AtCoder store

配点 : 600600

問題文

高橋くんは AtCoder 商店を経営しています。 AtCoder 商店には NN 人の客が訪れ、MM 個の商品が売られています。 ii 番目 (1iN)(1\leq i\leq N) の客は購買意欲 BiB _ i を持っています。 jj 番目 (1jM)(1\leq j\leq M) の商品の商品価値は CjC _ j です。

高橋くんはそれぞれの商品に値段をつけます。 ii 番目の客は、jj 番目の商品の値段 PjP _ j が次の条件を満たすような商品のみを、すべて 11 個ずつ購入します。

  • Bi+CjPjB _ i+C _ j\geq P _ j

j=1,2,,Mj=1,2,\ldots,M について、高橋くんが売り上げが最大になるような値段をつけたときの jj 番目の商品の売り上げを求めてください。 ただし、jj 番目の商品の売り上げとは、PjP _ jjj 番目の商品を買う人数をかけたものです。

制約

  • 1N2×1051\leq N\leq2\times10^5
  • 1M2×1051\leq M\leq2\times10^5
  • 0Bi109(1iN)0\leq B _ i\leq10^9\quad(1\leq i\leq N)
  • 0Ci109(1iM)0\leq C _ i\leq10^9\quad(1\leq i\leq M)
  • 入力はすべて整数

入力

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

NN MM

B1B _ 1 B2B _ 2 \ldots BNB _ N

C1C _ 1 C2C _ 2 \ldots CMC _ M

出力

j=1,2,,Mj=1,2,\ldots,M について、jj 番目の商品の売り上げを空白区切りで 11 行に出力せよ。

5 4
100 200 300 400 500
120 370 470 80
1280 2350 2850 1140

たとえば、11 番目の商品の値段を 320320 にすると、2,3,4,52,3,4,5 番目の客が購入します。 11 番目の商品の売り上げは 12801280 になります。 11 番目の商品の売り上げを 12801280 より大きくすることはできないので、11 番目に出力すべき値は 12801280 です。

4 4
0 2 10 2
13 13 0 4
52 52 10 18

購買意欲が同じ 22 人や、商品価値が同じ 22 品があることもあります。

12 15
16 592 222 983 729 338 747 61 451 815 838 281
406 319 305 519 317 590 507 946 365 5 673 478 340 176 2
6280 5466 5382 7410 5454 8120 7290 11680 5870 3670 8950 7000 5620 4608 3655
5 5
1000000000 1000000000 1000000000 1000000000 1000000000
1000000000 1000000000 1000000000 1000000000 1000000000
10000000000 10000000000 10000000000 10000000000 10000000000

売り上げが 32bit32\operatorname{bit} 整数におさまらない場合があることに注意してください。