No.2770 Coupon Optimization
タグ : / 解いたユーザー数 65
作問者 : srjywrdnprkt / テスター : 👑 hahho
問題文
ユキオくんはたこ焼きパーティーを開催するために、Yuki電機でたこ焼き器をいくつか買う予定です。
Yuki電機では $N$ 個のたこ焼き器が売られており、$i$ 番目のたこ焼き器の値段は $A_i$ 円です。ただし、$1\leq i \leq N$ を満たす全ての整数 $i$ に対して、$A_i$ は $100$ の倍数であることが保証されます。
ユキオくんは $M$ 枚のクーポンを持っており、$i$ 枚目のクーポンを使用すると、$x$ 円のたこ焼き器を $B_i$ %引きで買うことができます。つまり、$\frac{100-B_i}{100}x$ 円で買うことができます。
ただし、$1$ つのたこ焼き器に対して複数のクーポンを使用することや、一度使用したクーポンを再度使用することはできません。
$k=1,\cdots N$ のそれぞれの場合について、ユキオくんが適切にクーポンを使用したとき、$k$ 個のたこ焼き器を買うために必要な金額の最小値を求めてください。
入力
$N\ M$ $A_1\ \cdots\ A_N$ $B_1\ \cdots\ B_M$
入力は全て整数で以下の制約を満たす。
- $1\leq N\leq 2\times 10^5$
- $1 \leq M \leq 2\times 10^5$
- $100 \leq A_i \leq 10^9$
- $A_i$ は $100$ の倍数
- $1 \leq B_i \leq 99$
出力
$N$ 行出力してください。$k$ 行目にはユキオくんが $k$ 個のたこ焼き器を買うために必要な金額の最小値を求めてください。
サンプル
サンプル1
入力
3 2 2000 1500 1700 10 15
出力
1275 2795 4730
$k=2$ の場合について考えます。$2$ 番目のたこ焼き器に対して、$1$ 番目のクーポンを、$3$ 番目のたこ焼き器に対して、$2$ 番目のクーポンを使用して購入します。
このときにかかる金額は $\frac{100-10}{100}\times 1500+\frac{100-15}{100}\times 1700 = 2795$ 円となり、これが最小です。サンプル
サンプル2
入力
3 5 100 100000 1000000000 31 41 52 95 89
出力
5 5011 50011048
提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。