#AT1213. atcoder ABC144

atcoder ABC144

配点: 500500 点

問題文

高橋君は早食い大会に出ることにしました。この大会は NN 人でのチーム戦であり、高橋君のチームは年齢順に 11 から NN までの番号がついた NN 人のメンバーからなります。メンバー ii の 消化コスト は AiA_i です。

大会では 11 から NN までの番号がついた NN 個の食べ物が用意されており、食べ物 ii の 食べにくさ は FiF_i です。大会のルールは以下の通りです。

  • 11 個の食べ物につき 11 人のチームメンバーを割り当てる。同じメンバーを複数の食べ物に割り当てることはできない。
  • あるメンバーについて、そのメンバーの消化コストが xx、担当する食べ物の食べにくさが yy のとき、その食べ物の完食には x×yx \times y 秒かかる。
  • NN 人のメンバーそれぞれが完食にかかる時間のうち最大値が、チーム全体の成績となる。

コンテストの前に、高橋君のチームは修行をすることにしました。各メンバーは、自分の消化コストが 00 より小さくならない限り、11 回修行するごとに自分の消化コストを 11 減らすことができます。ただし、修行には膨大な食費がかかるため、NN 人合計で KK 回までしか修行することができません。

各メンバーの修行回数と担当する食べ物を適切に選んだとき、チーム全体の成績は最小でいくらになるでしょうか。

制約

  • 入力はすべて整数
  • 1≤N≤2×1051 \leq N \leq 2 \times 10^5
  • 0≤K≤10180 \leq K \leq 10^{18}
  • 1≤Ai≤106 (1≤i≤N)1 \leq A_i \leq 10^6\ (1 \leq i \leq N)
  • 1≤Fi≤106 (1≤i≤N)1 \leq F_i \leq 10^6\ (1 \leq i \leq N)

入力

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

NN KK

A1A_1 A2A_2 ...... ANA_N

F1F_1 F2F_2 ...... FNF_N

出力

チーム全体の成績の最小値を出力してください。

3 5
4 2 1
2 3 1
2

下のようにすることで、チーム全体の成績は 22 になります。

  • メンバー 11 に 44 回修行させ、食べ物 22 を割り当てます。完食にかかる時間は (4−4)×3=0(4-4) \times 3 = 0 秒です。
  • メンバー 22 に 11 回修行させ、食べ物 33 を割り当てます。完食にかかる時間は (2−1)×1=1(2-1) \times 1 = 1 秒です。
  • メンバー 33 に 00 回修行させ、食べ物 11 を割り当てます。完食にかかる時間は (1−0)×2=2(1-0) \times 2 = 2 秒です。

チーム全体の成績を 22 より小さくすることはできないので、答えは 22 です。

3 8
4 2 1
2 3 1
0

必ずしも KK 回ちょうど修行する必要はありません。

11 14
3 1 4 1 5 9 2 6 5 3 5
8 9 7 9 3 2 3 8 4 6 2
12