問題一覧 > 通常問題

No.798 コレクション

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 161
作問者 : ikd / テスター : 37zigen
29 ProblemId : 2406 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2019-03-15 14:08:17

問題文

yukiくんの住む町に明日新しい店がオープンします。
yukiくんは明日から毎日その店に通い、1日に1つずつ商品を買うことで店の商品をすべて集めることに決めました。
町にはyukiくんしか住んでいないため、他の人がその店の商品を買うことはありません。

店で扱っている商品はN個あり、i番目の商品の価格ははじめAi円です。
ただし商品の価格は1日ごとにBi円ずつ上昇していきます。
つまり、商品iをオープンからd日目に購入するにはAi+Bi×d円が必要になります。
なお、オープン初日についてはオープンから0日目と考えます。
また、各商品は在庫が1つしか存在せず同じ商品を2度購入することはできません。

店ではオープンから経った日数が奇数の日(オープンから1日目、3日目、5日目、...)にキャンペーンを行っています。
キャンペーンが行われている日に商品を買った人は、購入した商品とは別に好きな商品を1つだけその商品の価格に関係なく0円で購入することができます。

yukiくんは商品を買う順番を工夫して、できるだけ少ない金額で店の商品を全て集めたいと考えています。
最小でいくらあればN個の商品全てを集めることができるでしょうか。

入力

N
A1 B1
A2 B2
.
.
AN BN

1行目に商品の個数Nが与えられます。
2行目からN行にわたって商品の情報が与えられます。
そのうちi行目には商品iのはじめの価格Aiおよび整数Biが空白区切りで与えられます。

制約

  • 1N2000
  • 1Ai,Bi105 (i=1,2,,N)
  • 入力はすべて整数

出力

N個の商品を集めるために必要な最小の金額を出力してください。最後に改行してください。

サンプル

サンプル1
入力
3
6 8
2 9
4 7
出力
13

この場合yukiくんの最適な行動は次のようになります。

  • 0日目:2+9×0=2円払って商品2を購入する
  • 1日目:4+7×1=11円払って商品3を購入する
    • オープンから奇数日目なので、キャンペーンによって無料で商品1を購入する
合計で2+11=13円払ったので13を出力します。
サンプル2
入力
2
6 2
3 3
出力
11

0日目に商品2を購入し1日目に商品1を購入するのが最適です。

yukiくんは次のような行動をとれないことに注意してください。

  • 0日目に商品を購入せず、1日目に商品2を購入しキャンペーンによって0円で商品1を購入する
  • 0日目に商品2を購入し、1日目にも商品2を購入、キャンペーンによって0円で商品1を購入する
サンプル3
入力
8
3 13
18 8
3 14
1 18
3 3
18 12
10 18
15 19
出力
169

提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。