atcoder#KEYENCE2021A. Two Sequences 2

Two Sequences 2

配点 : 300300

問題文

すぬけ君は長さ NN の数列 a,ba,b を持っています。 a,ba,bii 番目の数はそれぞれ ai,bia_i,b_i です。

すぬけ君は a,ba,b を使って長さ NN の数列 cc を作ることにしました。 1nN1 \leq n \leq N を満たす nn について、ccnn 番目の数 cnc_n1ijn1 \leq i \leq j \leq n を満たすような (i,j)(i,j) について aibja_i b_j を計算したときの最大値です。より形式的には cnc_ncn=max1ijnaibjc_n = \max_{1 \leq i \leq j \leq n} a_{i}b_{j} で表される数です。

c1,c2,,cNc_1, c_2, \ldots, c_{N} を求めてください。

制約

  • 与えられる入力は全て整数
  • 1N2×1051 \leq N \leq 2 \times 10^{5}
  • 1ai,bi1091 \leq a_i, b_i \leq 10^9

入力

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

NN

a1a_{1} a2a_{2} \cdots aNa_{N}

b1b_{1} b2b_{2} \cdots bNb_{N}

出力

NN 行出力せよ。上から nn 行目では cnc_{n} を出力せよ。

3
3 2 20
1 4 1
3
12
20
  • c1=max(a1b1)=3c_{1} = \max(a_{1}b_{1}) = 3 です。
  • $c_{2} = \max(a_{1}b_{1}, a_{1}b_{2},a_{2}b_{2}) = 12$ です。
  • $c_{3} = \max(a_{1}b_{1}, a_{1}b_{2}, a_{1}b_{3}, a_{2}b_{2},a_{2}b_{3},a_{3}b_{3}) = 20$ です。
20
715806713 926832846 890153850 433619693 890169631 501757984 778692206 816865414 50442173 522507343 546693304 851035714 299040991 474850872 133255173 905287070 763360978 327459319 193289538 140803416
974365976 488724815 821047998 371238977 256373343 218153590 546189624 322430037 131351929 768434809 253508808 935670831 251537597 834352123 337485668 272645651 61421502 439773410 621070911 578006919
697457706539596888
697457706539596888
760974252688942308
760974252688942308
760974252688942308
760974252688942308
760974252688942308
760974252688942308
760974252688942308
760974252688942308
760974252688942308
867210459214915026
867210459214915026
867210459214915026
867210459214915026
867210459214915026
867210459214915026
867210459214915026
867210459214915026
867210459214915026